Spark Core
核心概念:RDD是基本数据处理模型,具备弹性、分布式等特性,拥有分区列表、计算函数等核心属性,其执行涉及资源申请、任务划分与调度。此外,还介绍了累加器和广播变量,用于分布式环境下的数据聚合与对象分发。
编程操作:包括创建RDD的多种方式,如从集合、外部存储等;RDD转换算子分为Value、双Value和Key - Value类型,各有不同的操作函数;行动算子用于触发实际计算,返回结果或进行存储 。同时,讲解了RDD的序列化、依赖关系、持久化和分区器等内容。
Spark SQL
核心概念:是处理结构化数据的模块,提供DataFrame和DataSet编程抽象。DataFrame类似二维表格,带有schema元信息;DataSet是其扩展,具有强类型和更友好的API。
编程操作:创建DataFrame的方式多样,支持SQL和DSL语法查询。RDD、DataFrame和DataSet可相互转换,且都支持数据加载与保存,通用方式可处理多种数据格式。此外,还介绍了自定义函数和连接Hive的多种方式。
Spark Streaming
核心概念:用于流式数据处理,以DStream为抽象表示,内部由RDD序列组成,具有易用、容错和易整合的特点。
编程操作:DStream创建方式包括RDD队列、自定义数据源和Kafka数据源。其转换操作有无状态和有状态之分,输出操作决定数据去向,如打印、保存等 。