它们都是基本的数据抽象,它们底层都是不可变的数据集。底层都是对于整个数据集进行分区,然后并行操作。
DataSet和DataFrame对应的数据是结构化数据。
DataFrame是DataSet的子集,DataFrame的数据类型只有一种,就是Row类型的。DataSet可以是任意的数据类型,是一种强类型。更早的发现代码和开发中的一些错误。节约时间。
RDD是数据集,提供算子功能;
DataSet既能提供RDD算子功能,又有DSL编程风格,还能提供SQL的一些分析方法。
DataFrame是DataSet[Row];