当前位置: 代码迷 >> 综合 >> DataFrame/Dataset简介
  详细解决方案

DataFrame/Dataset简介

热度:123   发布时间:2023-11-13 09:32:53.0

DataFrame:1.3版本以前叫做SchemaRDD后来改名为DataFrame
    1.分布式的数据集
    2.按列进行组织的数据集
    3.等于关系型数据库
    4.等于DateSet[Row]
Dataset:A Dataset is a distributed collection of data.
DataFrame vs Dataset(1.6出现) 
    支持的编程语言:
    DS: Java  Scala
    DF: Java  Scala  Pathon  R

DataFrame vs RDD vs Dataset
RDD、DataFrame、Dataset的区别和各自的优势

Spark SQL入口点(版本对比)
    <2(版本号): SQLContext   HiveContext
    >=2(版本号): SparkSession

SparkSession示例:SparkSession详解

val spark = SparkSession.builder()
.master("local[2]")
.appName("SparkSessionZipsExample")
.enableHiveSupport()//支持Hive
.getOrCreate()


DataFrame基本操作:
读取文件:
spark.read.format("json").load(path)   
简写:spark.read.json(path)//底层调用的上述方法
spark.read.format("text").load(path)   
spark.read.format("parquet").load(path)   
spark.read.format("orc").load(path)    

查询字段:
df.select("name") .show
df.select('name") .show
df.select($"name", $"age" + 1) .show
DataFrame常用命令

API RDD to DF:
Spark将RDD转换成DataFrame的两种方式

DF to SQL:

df.createOrReplaceTempView("table")
spark.sql("select * from table").show()

 

  相关解决方案