火花中的转换和rdd函数有什么区别



我正在阅读火花教科书,我看到转换和操作,我再次阅读rdd函数,所以我很困惑,谁能解释一下转换和火花rdd函数之间的基本区别是什么。

两者都用于更改 rdd 数据内容并返回新的 rdd,但我想知道确切的解释。

Spark rdd函数transformationsactions两者兼而有之。 Transformation 是更改rdd数据的函数,Action是不更改数据但给出输出的函数。
例如:
mapfilterunion等都是transformation的,因为它们有助于改变现有数据。 reducecollectcount都是action的,因为它们给出输出而不是改变数据。欲了解更多信息,请访问Spark和Jacek

RDD仅支持两种类型的操作:转换(从现有数据集创建新数据集(和操作(在数据集上运行计算后向驱动程序返回值(。

RDD Functions是教科书中用于内部机制的通用术语。

例如,MAP 是一种转换,它通过函数传递每个数据集元素并返回表示结果的新 RDD。REDUCE是一个使用某个函数聚合RDD的所有元素并将最终结果返回给驱动程序的操作。

由于Spark的集合本质上是不可变的,因此一旦创建了RDD,我们就无法更改数据。转换是应用于RDD并在输出中产生其他RDD的功能(即:mapflatMapfilterjoingroupBy,...(。操作是应用于RDD并产生非RDD(数组,列表...等(数据作为输出(即:countsaveAsTextforeachcollect、...(。

最新更新