06 spark SQL及其DataFrame的基本操作
一,Spark SQL出现的 原因是什么?
SparkSQL抛弃原有Shark的代码,汲取了Shark的一些优点,如内存列存储(In-Memory Columnar Storage)、Hive兼容性等,重新开发了SparkSQL代码;
由于摆脱了对hive的依赖性,SparkSQL无论在数据兼容、性能优化、组件扩展方面都得到了极大的方便
二,用spark.read 创建DataFrame
spark.read.text(file)
spark.read.json(file)
三,观察从不同类型文件创建DataFrame有什么异同?
spark.read.text(file)不能识别出列名,spark.read.json(file)可以
四, 观察Spark的DataFrame与Python pandas的DataFrame有什么异同?
都可以读取多种类型文件
Spark SQL DataFrame的基本操作
创建:
spark.read.text()
spark.read.json()
打印数据
df.show()默认打印前20条数据,df.show(n)
打印概要
df.printSchema()
查询总行数
df.count()
df.head(3) #list类型,list中每个元素是Row类
输出全部行
df.collect() #list类型,list中每个元素是Row类
查询概况
df.describe().show()
取列
df[‘name’]
df.name
df.select()
df.filter()
df.groupBy()
df.sort()