spark-SQL核心编程课后总结

通用加载与保存方式

加载数据:Spark-SQL的 spark.read.load 是通用加载方法,借助 format 指定数据格式,如 csv 、 jdbc 、 json 等; load 用于指定数据路径; option 在 jdbc 格式时传入数据库连接参数。此外,还能直接在文件上利用 spark.sql 进行查询,简化了数据读取流程。

保存数据: df.write.save 是通用保存方法,同样用 format 指定格式, save 确定保存路径, option 设置 jdbc 参数 。通过 mode 可选择 SaveMode ,如 ErrorIfExists (默认,文件存在时抛异常)、 Append (追加)、 Overwrite (覆盖)、 Ignore (忽略),灵活处理数据保存场景。

特定格式数据操作

Parquet格式:作为Spark-SQL默认数据源,Parquet以列式存储嵌套数据,高效且方便。加载时直接使用 spark.read.load 指定文件路径;保存时,若要更改默认数据源格式,可修改 spark.sql.sources.default 配置项。

JSON格式:Spark-SQL能自动推断JSON数据集结构并加载为 Dataset[Row] 。需注意,读取的JSON文件每行应为独立JSON串。加载后可创建临时表,方便使用SQL语句查询数据。

CSV格式:读取CSV文件时,可通过 format("csv") 结合 option 配置,如设置分隔符 sep 、自动推断数据类型 inferSchema 、指定首行为表头 header ,实现灵活的数据读取。

MySQL操作:借助JDBC,Spark-SQL可与MySQL交互。首先要导入 mysql-connector-java 依赖,读取数据有多种方式,如使用 format("jdbc") 结合 option 设置连接参数,或通过 Properties 对象传递参数。写入数据时,先将数据转换为 Dataset ,再配置连接参数和保存模式写入MySQL。

学习收获与应用展望

知识技能提升:系统学习了Spark-SQL数据加载与保存的多种方式,掌握了不同数据格式的特点和处理技巧,理解了JDBC在数据库交互中的应用,提升了数据处理编程能力。

应用场景拓展:这些技能在大数据处理场景中应用广泛,如ETL(Extract, Transform, Load)流程中数据的读取和存储、数据分析中从多种数据源获取数据等。未来在处理海量结构化数据时,能运用所学优化数据处理流程,提高处理效率。

相关推荐
得物技术3 天前
深入剖析Spark UI界面:参数与界面详解|得物技术
大数据·后端·spark
肌肉娃子7 天前
20260227.spark.Spark 性能刺客:千万别在 for 循环里写 withColumn
spark
B站计算机毕业设计超人8 天前
计算机毕业设计Django+Vue.js音乐推荐系统 音乐可视化 大数据毕业设计 (源码+文档+PPT+讲解)
大数据·vue.js·hadoop·python·spark·django·课程设计
十月南城8 天前
数据湖技术对比——Iceberg、Hudi、Delta的表格格式与维护策略
大数据·数据库·数据仓库·hive·hadoop·spark
Asher05098 天前
Spark核心基础与架构全解析
大数据·架构·spark
FYKJ_201012 天前
springboot大学校园论坛管理系统--附源码42669
java·javascript·spring boot·python·spark·django·php
鸿乃江边鸟14 天前
Spark Datafusion Comet 向量化Rust Native--Native算子ScanExec以及涉及到的Selection Vectors
大数据·rust·spark·arrow
派可数据BI可视化15 天前
一文读懂系列:数据仓库为什么分层,分几层?数仓建模方法有哪些
大数据·数据仓库·信息可视化·spark·商业智能bi
码字的字节15 天前
锚点模型:数据仓库中的高度可扩展建模技术详解
大数据·数据仓库·spark