Spark DataFrame 的创建和保存

前言

DataFrame是Spark中对带模式(schema)行列数据的抽象。DateFrame广泛应用于使用SQL处理大数据的各种场景。

DataFrame 创建

法一 、从不同类型的文件中加载数据创建DataFrame,spark.read 操作

  • spark.read.json(“testJson.json”) 或者spark.read.format(“json”).load(“testJson.json”)
    json文件
{"name":"min","age":20,}
{"name":"ho", "age":19}
{"name":"zi", "age":21}

代码:

val dfJson = spark.read.format("json").load("/Users/testJson.json")
dfJson.show()
  • spark.read.csv(“testCsv.csv”) 或者spark.read.format(“json”).load(“testCsv.csv”)
    csv文件
name,age,phone
min,20
ho,19
zi,21

代码

val dfCsv = spark.read.format("csv").option("header", true).load("/Users/testCsv.csv")
dfCsv.show()
  • spark.read.parquet(“testParquet.parquet”) 或者spark.read.format(“parquet”).load(“testParquetparquet”)
    parquet文件、代码
val dfCsv = spark.read.format("parquet").option("header", true).load("/Users/testParquet.parquet")
dfCsv.show()

法二、 通过Seq + oDF创建DataFrame

val spark = SparkSession
  .builder()
  .appName("test")
  .master("local")
  .getOrCreate()

val df = spark.createDataFrame(Seq(
  ("min", 20),
  ("ho", 19),
  ("zi", 21)
)) toDF("name", "age")
df.show()

DataFrame 保存

法一 、从不同类型的文件中加载数据保存DataFrame,spark.write 操作

上一篇:dataframe 一列按某一列分组画直方图/箱线图


下一篇:pandas 导出excel表,每个worksheet只能有65530条URL