火花pipline的懒惰

时间:2016-09-07 13:55:10

标签: scala apache-spark rdd

我对 Apache Spark 管道的懒惰有疑问。我确实理解火花变换和动作。

让我们举个例子:

以下代码段是一个转换,它返回文件夹中所有文件名的RDD。

val filenames = sc.wholeTextFiles("pathToDirectory").map( _ match { case (filename, content) =>  filename })

如果我执行动作:

filenames.count

spark正在执行所有定义的转换,包括加载'文件名' RDD和'内容' RDD到内存中即使内容'未使用

是否有更好的方法来编写spark变换,例如:在执行操作时不会评估未使用的代码(例如上一个示例中的'内容' RDD)?

感谢您的反馈。

0 个答案:

没有答案