Spark是否可以融合过滤器和地图

时间:2018-10-05 15:59:34

标签: apache-spark

我正在探索Spark的操作融合功能,如果有Spark,我会好奇 可以将过滤器和地图融为一体,例如

val names = sc.parallelize(List("Subhrajit Bhattacharya", "John Doe"))

val longNames = names.filter( x => x.length > 10)
val splitLongNames = longNames.map(x => x.split(" ").toList)

如果是,该函数的代码是什么?还有没有办法知道Spark正在融合哪些操作?

谢谢。

1 个答案:

答案 0 :(得分:0)

是的,Spark将尽可能地“融合”。

这些阶段没有改组要求-即无需四处移动数据-不像groupByKey那样,以实现期望的结果。

在这种情况下,生成的新RDD跟随父RDD。因此,融合是可能的,而且实际上始终是意图。