当前位置: 首页 > news >正文

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)流程中数据的读取和存储、数据分析中从多种数据源获取数据等。未来在处理海量结构化数据时,能运用所学优化数据处理流程,提高处理效率。

相关文章:

  • thinkphp:部署完整项目到本地phpstudy
  • 移动硬盘突然打不开紧急救援指南:从排查到完整恢复‌
  • 【设计模式——装饰器模式】
  • OpenLayers:extent与view extent 介绍
  • 数据中台(大数据平台)之数据仓库建设
  • 蓝桥杯 9. 九宫幻方
  • prototype`和`__proto__`有什么区别?如何手动修改一个对象的原型?
  • 聊聊Spring AI Alibaba的MarkdownDocumentParser
  • Go语言实现OAuth 2.0认证服务器
  • 独家!美团2025校招大数据题库
  • 鸿蒙开发之嵌套对象更新
  • FPGA_YOLO(四)用HLS实现循环展开以及存储模块
  • 【WPF-VisionMaster源代码】应用OpenCVSharp仿Vision Master页面开发的软件源代码
  • C++学习之游戏服务器开发git命令
  • [MERN] 项目实战】MERN Multi-Vendor 电商平台开发笔记(v1.0 初版结构 + 技术实践)
  • 树莓派超全系列教程文档--(28)boot文件夹内容
  • Ngrok 内网穿透实现Django+Vue部署
  • vscode连接windows服务器出现过程试图写入的管道不存在
  • AIGC-十款数据分析类智能体完整指令直接用(DeepSeek,豆包,千问,Kimi,GPT)
  • 【STM32-代码】
  • 做会计公司网站的目录/市场调研问卷调查怎么做
  • 做网站需要一些什么东西/微信朋友圈推广平台
  • 常州做网站多少钱/沧州网站运营公司
  • 网站建设全包广/广东整治互联网霸王条款
  • 开了个网站用年份做名字好吗/小程序商城制作一个需要多少钱
  • 网站icp备案号查询/关键词排名批量查询软件