SparkSQL中DataFrame对象的三种访问方式(Shell模式、API和SQL)
目录
Shell模式操作DataFrame对象
- 单机启动Spark:%SPARK_HOME%/bin 目录下执行命令 sh spark-shell --master local
- 将数据库中的一个二维表转换成DataFrame对象,可以参照带你将集合类及文件和数据库表转化成SparkSQL中的DataFrame对象
- 首先我们获取一个数据库表的DataFrame对象
下面列出DataFrame对象的一些常用方法:
查询
带条件查询
排序查询
分组聚合
表连接查询
先创建一个待连接的表,作为右边的表
不指定连接方式,默认inner join查询
左外连接
右外连接
查看列的属性信息
其它一些方法,比如获取前N条记录、某条记录第N个字段属性值
Shell模型下SQL语句操作DataFrame对象
首先我们通过Sparkssession对象复制出一张新表。
Spark2版本通过dataFrame.registerTempTable(“表名称”)创建一个新表。
Spark3版本通过dataFrame.createTempView(“视图名称“)创建一个视图
下面是通过SQL操作我们视图的一些用例:
ScalaAPI方式操作DataFrame对象
API方式和Shell模式下操作没区别,唯一注意的是Spark2和Spark3在API版本上的差异