spark总结

Spark核心概念与数据结构

RDD基础:弹性分布式数据集RDD是Spark基本数据处理模型,具备弹性、分布式、数据集、数据抽象、不可变、可分区并行计算特性,其核心属性包括分区列表、计算函数、依赖关系、分区器、首选位置,在Yarn环境下与资源调度协同完成数据处理任务。

序列化与依赖:RDD涉及闭包检查、Kryo序列化等机制提升性能,其依赖关系有血缘关系、宽窄依赖,基于此划分DAG阶段和任务,不同任务层次存在1对n关系 。

持久化与分区:RDD可通过Cache和Checkpoint持久化数据,前者缓存于内存或磁盘,后者写入可靠文件系统,二者有切断血缘依赖、可靠性等方面的区别。Spark支持Hash、Range和自定义分区,分区器影响数据分区和Reduce个数。

文件操作:RDD能读取和保存text、sequence、object等格式文件,支持本地文件系统、HDFS等多种文件系统。

Spark Core编程

转换算子:RDD算子分Value、双Value和Key Value类型。Value类型算子如map、flatMap用于数据转换和扁平化处理;双Value类型算子用于集合间操作;Key - Value类型算子处理键值对数据,如分区、分组、聚合。

行动算子:行动算子触发实际计算,如reduce聚合元素、collect收集数据、foreach遍历操作等,还有count计数、first取首元素等功能。

累加器与广播变量:累加器聚合Executor端变量到Driver端,可自定义实现功能;广播变量高效分发只读对象,避免任务重复发送。

Spark SQL编程

基本操作:通过IDEA开发,创建SparkSession,支持SQL和DSL风格语法,可实现RDD、DataFrame和DataSet间转换。

自定义函数:UDF用于自定义数据转换,UDAF用于自定义聚合函数,有强弱类型实现方式,用于复杂数据处理。

数据读写:通用方式可加载和保存多种格式数据,Parquet是默认格式,JSON、CSV、MySQL数据处理各有特点,可通过JDBC与MySQL交互。

连接Hive:Spark SQL可连接内嵌或外部Hive,有多种使用方式,代码操作时需导入依赖、配置文件,可解决权限等问题。

Spark Streaming编程

DStream创建:可通过RDD队列、自定义数据源、Kafka数据源创建DStream。自定义数据源需继承Receiver,Kafka数据源当前常用DirectAPI,由计算Executor主动消费数据。

有状态转化与输出:有状态转化操作中,UpdateStateByKey跨批次维护状态,Window Operations基于窗口计算。DStream输出操作包括print、文件存储、foreachRDD等,foreachRDD可将数据写入外部系统 。

相关推荐
不辉放弃19 小时前
详细讲解pyspark中dsl格式进行大数据开发中的的所有编程情况
大数据·spark
IT研究室19 小时前
大数据毕业设计选题推荐-基于大数据的分化型甲状腺癌复发数据可视化分析系统-Spark-Hadoop-Bigdata
大数据·hadoop·信息可视化·spark·毕业设计·源码·bigdata
计算机编程小央姐19 小时前
数据安全成焦点:基于Hadoop+Spark的信用卡诈骗分析系统实战教程
大数据·hadoop·python·spark·毕业设计·课程设计·dash
工业互联网专业21 小时前
基于Spark的新冠肺炎疫情实时监控系统_django+spider
python·spark·django·vue·毕业设计·源码·课程设计
BYSJMG21 小时前
大数据毕业设计推荐:基于Spark的零售时尚精品店销售数据分析系统【Hadoop+python+spark】
大数据·hadoop·python·spark·django·课程设计
武子康1 天前
大数据-89 Spark应用必备:进程通信、序列化机制与RDD执行原理
大数据·后端·spark
计算机毕设残哥2 天前
数据量太大处理不了?Hadoop+Spark轻松解决海洋气象大数据分析难题
大数据·hadoop·python·数据分析·spark·django·dash
计算机编程小央姐2 天前
大数据毕业设计选题推荐:学生考试表现影响因素Hadoop+Spark实现方案
大数据·hadoop·数据分析·spark·毕业设计·课程设计
BYSJMG2 天前
计算机大数据毕业设计推荐:基于Spark的新能源汽车保有量可视化分析系统
大数据·分布式·python·spark·django·编辑器·课程设计
IT毕设梦工厂2 天前
大数据毕业设计选题推荐-基于大数据的儿童出生体重和妊娠期数据可视化分析系统-Hadoop-Spark-数据可视化-BigData
大数据·hadoop·信息可视化·spark·毕业设计·源码·bigdata