RDD vs DataFrames vs DataSet

时间:2019-05-15
本文章向大家介绍RDD vs DataFrames vs DataSet,主要包括RDD vs DataFrames vs DataSet使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

  在SparkSQLSpark为我们提供了两个新的抽象,分别是DataFrame和DataSet

  他们和RDD有什么区别呢?首先从版本的产生上来看:

  RDD (Spark1.0) —> Dataframe(Spark1.3) —> Dataset(Spark1.6)

  如果同样的数据都给到这三个数据结构,他们分别计算之后,都会给出相同的结果。不同是的他们的执行效率和执行方式。

1.1.1 RDD

  • RDD是一个懒执行不可变的可以支持Lambda表达式的并行数据集合。
  • RDD的最大好处就是简单,API的人性化程度很高
  • RDD的劣势是性能限制,它是一个JVM驻内存对也就决定了存在GC的限制和数据增加时Java序列化成本的升高。

1.1.1 Dataframe

  与RDD类似,DataFrame也是一个分布式数据容器。然而DataFrame更像传统数据库的二维表格,除了数据以外,还记录数据的结构信息,即schema

 

原文地址:https://www.cnblogs.com/Vowzhou/p/10871899.html