【发布时间】:2021-11-05 04:13:58
【问题描述】:
我开始阅读《Spark权威指南-大数据处理变得简单》这本书来学习Spark。当我阅读时,我看到一行说“DataFrame 是最常见的结构化 API,它简单地表示包含行和列的数据表。” 我不明白为什么 RDD 和 DataFrame 被称为 API?
【问题讨论】:
标签: apache-spark apache-spark-sql rdd
我开始阅读《Spark权威指南-大数据处理变得简单》这本书来学习Spark。当我阅读时,我看到一行说“DataFrame 是最常见的结构化 API,它简单地表示包含行和列的数据表。” 我不明白为什么 RDD 和 DataFrame 被称为 API?
【问题讨论】:
标签: apache-spark apache-spark-sql rdd
它们之所以被称为 API,是因为它们本质上只是针对完全相同的数据的不同接口。 DataFrame 可以构建在 RDD 之上,RDD 可以从 DataFrame 中提取。它们只是在该数据上定义了不同的函数集,主要区别在于语义和处理数据的方式,RDD 是较低级别的 API,而 DataFrame 是较高级别的 API。例如,您可以将 Spark SQL 接口与提供所有常见 SQL 函数的 DataFrame 一起使用,但如果您决定使用 RDD,则需要使用 RDD 转换自己编写 SQL 函数。
当然,它们都存在是因为它确实取决于您的用例。
【讨论】: