DataFrame与RDD的区别
2018-01-18 20:34
274 查看
RDD可看作是分布式的对象的集合,Spark并不知道对象的详细模式信息,DataFrame可看作是分布式的Row对象的集合,其提供了由列组成的详细模式信息,使得Spark SQL可以进行某些形式的执行优化.上图直观地体现了DataFrame和RDD的区别。
左侧的RDD[Person]虽然以Person为类型参数,但Spark框架本身不了解 Person类的内部结构。
而右侧的DataFrame却提供了详细的结构信息,使得Spark SQL可以清楚地知道该数据集中包含哪些列,每列的名称和类型各是什么。DataFrame多了数据的结构信息,即schema。这样看起来就像一张表了,DataFrame还配套了新的操作数据的方法,DataFrame API(如df.select())和SQL(select id, name from xx_table where ...)。
左侧的RDD[Person]虽然以Person为类型参数,但Spark框架本身不了解 Person类的内部结构。
而右侧的DataFrame却提供了详细的结构信息,使得Spark SQL可以清楚地知道该数据集中包含哪些列,每列的名称和类型各是什么。DataFrame多了数据的结构信息,即schema。这样看起来就像一张表了,DataFrame还配套了新的操作数据的方法,DataFrame API(如df.select())和SQL(select id, name from xx_table where ...)。
相关文章推荐
- DataFrame与RDD的区别
- DataFrame和RDD的区别
- Spark RDD、DataFrame、DataSet区别和联系
- DataFrame、RDD、DataSet的区别
- RDD,DataFrame与DataSet区别
- RDD,DataFrame与DataSet区别
- rdd,dataframe,dataset之间的区别
- BigData进阶--细说RDD,DataFrame,Dataset的区别
- 谈谈RDD、DataFrame、Dataset的区别和各自的优势
- RDD、DataFrame、Dataset的区别和各自的优势
- RDD,DataFrame 和 Dataset区别以及各自用途
- DataFrame与RDD的区别
- 3.Spark SQL:使用反射方式、编程方式,将RDD转换为DataFrame
- Spark RDD、DataFrame和DataSet的区别
- Spark SQL概念学习系列之DataFrame与RDD的区别
- RDD转换为DataFrame的两种方式及spark sql的简单实例
- 如何理解spark中RDD和DataFrame的结构?
- spark 中rdd与dataframe的合并
- 从rdd创建dataframe
- Spark中RDD转换成DataFrame的两种方式(分别用Java和scala实现)