Spark Web UI如何计算已完成作业的持续时间?

时间:2018-01-12 09:29:28

标签: apache-spark

因此,Spark中的转换是惰性的,这意味着它们在执行操作之前不会执行。

相同的概念是否适用于Spark的时序?例如,我有一个程序,它读入一堆文本文件,在它们上运行一些算法,最后在RDD上运行foreach,打印出一些数据。

当我检查"完成的工作"在Spark UI中,只有一个作业是foreach。这项工作耗时1.5分钟,总运行时间为1.6分钟。这1.5分钟是否包括读取和创建初始RDD所花费的时间,在RDD上运行算法并最终运行foreach子句中的任何内容(因为mapfilter我在RDD上运行的其他转换是懒惰的)?或者1.5分钟只显示foreach子句中的任何代码花费的时间?

附带问题:是否有可能"标记"一些函数要定时,例如,如果我有一个RDD.map,我想知道它的时间?

1 个答案:

答案 0 :(得分:1)

时间包括读取数据和应用完成操作所需的所有转换的时间。

如果定义的某些转换不是完成操作所必需的,那么这些转换将不会由spark运行。