Spark处理结构化数据:DataFrame、DataSet、SparkSQL

1. DataFrame:
- 表示分布式数据集合,以表格的形式存储数据,具有行和列。

- 支持丰富的操作和转换(如过滤、选择、聚合等)。

- 提供了对数据的高级抽象,简化了对复杂数据处理的操作。




2. DataSet:

- 结合了RDD的强类型特性和DataFrame的优化特性。

- 提供了类型安全的操作,编译时会检查类型错误。

- 可以用来处理需要严格类型控制的复杂数据。
3. SparkSQL:
- 提供SQL查询接口来处理结构化数据。


- 允许用SQL语句直接对DataFrame进行操作。

- 支持通过SQL API进行复杂的查询和数据分析。
它们之间的关系:
- DataFrame 是 DataSet 的一个特定实现,数据类型为
Row
。

- DataSet 可以通过
toDF()
转换为DataFrame
,反之亦然。