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

spark数据的提取和保存

Spark数据提取和保存

一、数据提取(读取数据)

 

1. 读取文件(文本、CSV、JSON等)

scala

// 读取文本文件

val textData = spark.read.text("路径/文件.txt")

// 读取CSV文件(带表头)

val csvData = spark.read

  .option("header", "true")

  .csv("路径/文件.csv")

// 读取JSON文件

val jsonData = spark.read.json("路径/文件.json")

 

2. 读取数据库(如MySQL)

scala

import spark.implicits._

val jdbcDF = spark.read.format("jdbc")

  .option("url", "jdbc:mysql://host:port/db")

  .option("dbtable", "表名")

  .option("user", "用户名")

  .option("password", "密码")

  .load()

 

 

3. 读取Hive表

scala

val hiveDF = spark.sql("SELECT * FROM hive表名")

 

二、数据保存(写入数据)

 

1. 保存为文件(文本、CSV、JSON等)

scala

// 保存为CSV文件(覆盖模式)

csvData.write.mode("overwrite").csv("路径/输出.csv")

// 保存为JSON文件(分区存储)

jsonData.write.partitionBy("字段").json("路径/输出.json")

 

2. 保存到数据库(如MySQL)

scala

jdbcDF.write.format("jdbc")

  .option("url", "jdbc:mysql://host:port/db")

  .option("dbtable", "表名")

  .option("user", "用户名")

  .option("password", "密码")

  .mode("append") // 追加模式

  .save()

 

3. 保存到Hive表

scala

hiveDF.write.saveAsTable("hive表名")

 

关键参数说明

-  mode :写入模式( overwrite 覆盖、 append 追加、 ignore 忽略已存在数据等)。

-  option :配置数据源参数(如表头、分隔符、数据库连接信息等)。

根据具体数据源类型选择对应格式( format ),如需处理非结构化数据(如图片、日志),可结合 binaryFile 或自定义解析逻辑。

http://www.xdnf.cn/news/6972.html

相关文章:

  • 5、事务和limit补充
  • 【Google机器学习实践指南(线性回归篇)
  • 【赵渝强老师】Memcached的路由算法
  • Linux rpmsg源码分析
  • 常见面试题:Webpack的构建流程简单说一下。
  • 【驱动开发】一 字符设备驱动框架
  • 10.11 LangGraph多角色Agent开发实战:生产级AI系统架构与性能优化全解析
  • 线性表之队列详解
  • C语言之旅【6】--一维数组和二维数组
  • dijkstra算法加训上 之 分层图最短路
  • Leetcode 3553. Minimum Weighted Subgraph With the Required Paths II
  • 【LeetCode 热题100】739:每日温度(详细解析)(Go语言版)
  • vue3大事件项目
  • 浅谈Frida 检测与绕过
  • RabbitMQ 工作模式(上)
  • MySQL事务的一些奇奇怪怪知识
  • linux本地部署ollama+deepseek过程
  • 大模型为什么学新忘旧(大模型为什么会有灾难性遗忘)?
  • EasyExcel动态表头
  • 【Java ee初阶】jvm(2)
  • 【Qt mainwindow 】窗口在启动时自动调整为适应屏幕大小
  • 正则表达式与文本处理的艺术
  • Selenium-Java版(css表达式)
  • go语法大赏
  • btc交易所关键需求区 XBIT反弹与上涨潜力分析​​
  • 深入理解Java中的Minor GC、Major GC和Full GC
  • 组态王|组态王中如何添加西门子1200设备
  • 2.2.4
  • 【数据结构】1-3 算法的时间复杂度
  • Zookeeper 入门(二)