【极简spark教程】SparkSQL、DataSets、DataFrames

读取文件

显示数据

选择数据

仅选择

选择并计算

na处理

​​​RDD-数据聚合操作

分组计数

分组后求最值、均值、总和的方法

分组后,求多个聚合值(最值、平均值等)。使用算子groupBy+agg

分组聚合后取别名

分组后行转列,使用pivot

若需要直接求count、max、min的情况,groupBy中不传值

sql操作

注册临时表

注册全局表

sparkSql

sql操作

创建RDD

​​​​​​​从文件创建:调用sc.textFile,按行解析为rdd

从集合创建:调用sc.parallelize,按行解析为rdd

创建DataFrame

​​​​​​​​​​​​​​List,toDF:使用List[Tuple]包装每行记录,结合toDF接口,转化为DataFram​​​​​​​e

Seq,toDF:使用Seq[Tuple]包装每行记录,结合toDF接口,借助隐式转换,生成DataFrame

RDD,StructType:推荐使用RDD和schema,生成DataFrame​​​​​​​

RDD,StructType:补充,单个元素构成一行记录,使用Row.apply()

RDD,StructType:补充,多个元素构成一行记录,使用Row.fromSeq()

创建DataSet,与DataFrame区别在于DataFrame对每个字段的类型要求强一致,DataSet对每行记录的类型要求强一致

​​​​​​​​​​​​​List.map(beanClass(_)):使用case class包装每行记录,借助case class参数列表定义字段信息,每个属性名都会成为DataFrame的列名

RDD.map(beanClass(_)):使用RDD,生成createDataFrame

​​​​​​​​​​​​​​​​​​​​​DF转化为DataSet

RDD转化为DF

读取文件

显示数据

选择数据

仅选择

选择并计算

na处理

​​​RDD-数据聚合操作

分组计数

分组后求最值、均值、总和的方法

分组后,求多个聚合值(最值、平均值等)。使用算子groupBy+agg

分组聚合后取别名

分组后行转列,使用pivot

若需要直接求count、max、min的情况,groupBy中不传值

sql操作

注册临时表

注册全局表

sparkSql

sql操作

创建RDD

​​​​​​​从文件创建:调用sc.textFile,按行解析为rdd

从集合创建:调用sc.parallelize,按行解析为rdd

创建DataFrame

​​​​​​​​​​​​​​List,toDF:使用List[Tuple]包装每行记录,结合toDF接口,转化为DataFram​​​​​​​

RDD,StructType:推荐使用RDD和schema,生成DataFrame​​​​​​​

RDD,StructType:补充,单个元素构成一行记录,使用Row.apply()

RDD,StructType:补充,多个元素构成一行记录,使用Row.fromSeq()

创建DataSet,与DataFrame区别在于DataFrame对每个字段的类型要求强一致,DataSet对每行记录的类型要求强一致

​​​​​​​​​​​​​List.map(beanClass(_)):使用case class包装每行记录,借助case class参数列表定义字段信息,每个属性名都会成为DataFrame的列名

RDD.map(beanClass(_)):使用RDD,生成createDataFrame

​​​​​​​​​​​​​​​​​​​​​DF转化为DataSet

RDD转化为DF

读取文件

val df = spark.read.json("test.json")
val df = spark.read.csv("test.csv")
val df = spark.read.jdbc("test.jdbc")
val df = spark.read.orc("test.orc")
val df = spark.read.parquet("test.parquet")
val df = spark.read.textFile("test.txt")
val df = spark.read.format("com.databricks.spark.avro").load("test.avor")
val df = spark.read.option("header","true").csv("test.txt")

Original: https://blog.csdn.net/ljp7759325/article/details/124099713
Author: 鱼摆摆
Title: 【极简spark教程】SparkSQL、DataSets、DataFrames

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/678123/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球