spark sql核心API整理

本文主要整理了Spark SQL中的核心API,包括sparkSession作为入口,Dataset接口及其DataFrame、Column、ROW对象的操作,Encoder序列化支持,以及functions内置函数和SQLImplict隐式转换。通过SparkSession实例化并导入implicts,可以方便地进行RDD到DataFrame/Dataset的转换,并使用丰富的操作函数进行数据处理。
摘要由CSDN通过智能技术生成

 

 

核心API:

sparkSession: spark入口

统一封装SparkConf,SparkContext,SQLContext, 配置运行参数,读取文件,创建数据,使用SQL

Dataset:

统一Dataset接口,其中DataFrame==Dataset[Row]

基本实现了类似RDD的所有算子

column: Dataset的列对象

包括对列操作的基本函数

ROW : DataFrame的行对象

包括对行操作的基本函数

Encoder : 序列化

支持常用的数据类型,可以直接序列化,也支持case class自定义数据对象进行序列化

functions: Dataset的内置函数

支持丰富的操作函数(聚合,collection… …)

SQlImplict: 隐式转换

其中scala对象RDD转换成DF/DS ,DF/DS使用Map/FlatMap方法等;

要采用的隐式转换格式的

val spark= SparkSession.()

import spark.implicts._

注意 : Dataset是一个类(RDD是一个抽象类,而Dataset不是抽象类),其中有三个参数:

SparkSession(包含环境信息)

QueryExecution(包含数据和执行逻辑)

Encoder[T]:数据结构编码信息(包含序列化、schema、数据类型)

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

勇敢607

你的鼓励,是我前行动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值