目录:
1、printSchema()
2、select()
3、filter()
4、groupBy()
5、sort()
一、概述
Spark Core所使用的的数据抽象是RDD(弹性分布式数据集);
Spark SQL所使用的的数据抽象是DataFrame(带有Schema信息的RDD);
•RDD是分布式的 Java对象的集合,但是,对象内部结构对于RDD而言却是不可知的。
•DataFrame是一种以RDD为基础的分布式数据集,提供了详细的结构信息。
(只不过RDD就像一个空旷的屋子,你要找东西要把这个屋子翻遍才能找到。那我们的这个DataFrame相当于在你的屋子里面打上了货架。那你只要告诉他你是在第几个货架的第几个位置,那不就是二维表吗。那就是我们DataFrame就是在RDD基础上加入了列。实际上我们处理数据就像处理二维表一样。)
二、创建
•Spark使用SparkSession接口替代SQLContext及HiveContext接口来实现其对数据加载、转换、处理等功能。SparkSession实现了SQLContext及HiveContext所有功能。
•SparkSession支持从不同的数据源加载数据,并把数据转换成DataFrame