当前位置: 首页 > 知识库问答 >
问题:

为什么Spark中的RDD、Dataframe和Dataset被称为Api?

时才俊
2023-03-14

我开始阅读《Spark权威指南大数据处理变得简单》一书,学习Spark。当我阅读时,我看到一句话:“DataFrame是最常见的结构化API,它只是用行和列表示一个数据表。”我无法理解为什么RDD和数据帧被称为API?

共有1个答案

荣德厚
2023-03-14

它们之所以被称为API,是因为它们本质上只是完全相同数据的不同接口。数据帧可以构建在RDD之上,RDD可以从数据帧中提取出来。它们只是在数据上定义了不同的函数集,主要区别在于语义和处理数据的方式,RDD是低级API,DataFrame是高级API。例如,您可以将Spark SQL接口与DataFrame一起使用,DataFrame提供所有常见的SQL函数,但如果您决定使用RDD,则需要使用RDD转换自己编写SQL函数。

当然,它们都存在,因为这实际上取决于您的用例。

 类似资料:
  • 在Apache Spark中,这些API之间有什么区别?为什么以及什么时候我们应该选择其中一个?

  • 我只是想知道Apache Spark中的和之间有什么区别(Spark 2.0.0 DataFrame只是)的类型别名? 你能把一个转换成另一个吗?

  • 我浏览了一下Spark中RDD和Dataframe的链接有什么区别? > 我们可以在spark上运行Pandas、numpy数据帧功能吗。对于numpy,np。像df这样的熊猫在哪里和在哪里。分组依据[“”]。agg()

  • 嗨,我对apache spark比较陌生。我想了解RDD、dataframe和数据集之间的区别。 例如,我从s3存储桶中提取数据。 在这种情况下,当我从s3加载数据时,什么是RDD?另外,由于RDD是不可变的,所以我可以更改df的值,使df不能是RDD。 如果有人能解释RDD、数据帧和数据集之间的区别,我将不胜感激。

  • 我试图将JDBC的ResultSet转换成Spark RDD,并寻找一种有效的方法来使用Spark的并行特性。 以下是我按照这个https://stackoverflow.com/a/32073423/6064131实现的 现在的主要问题是它需要更多的时间,我知道所有数据集都是通过一根针提取的eye.But有没有更好的方法来实现这一点? 有些人可能想知道为什么我没有使用内置功能sqlContext

  • 问题内容: 我是新手,我想使用group-by&reduce从CSV中查找以下内容(按聘用者一行): 我想通过按 部门,指定,州* 和其他列(以 sum(costToCompany) 和 TotalEmployeeCount 来简化CSV 格式) * 应该得到如下结果: 有什么方法可以使用转换和操作来实现这一目标。还是我们应该进行RDD操作? 问题答案: 程序 创建一个类(模式)以封装您的结构(方