阶段内任务执行的Spark命令和阶段

时间:2015-04-22 11:40:37

标签: apache-spark

我是火花的新手我想了解一些关于它如何在幕后工作的基本机制。 我附上了我的RDD的血统,我有以下问题:

  1. 为什么我有8个阶段而不是5个阶段?从“从星火中学习”(第8章http://bit.ly/1E0Hah7)一书中,我可以理解“存在与缩进相同级别的RDD” 父母将在实际执行过程中被流水线化[进入相同的物理阶段]。由于我有5个父母,我预计将有5个阶段。仍然是Spark UI阶段视图,显示8个阶段。 什么代表调试字符串中表示的(8)?这个函数有没有错误?
  2. 在阶段级别,任务之间的执行顺序是什么?
  3. 他们可以并行执行所有这些

    clear()

    或他们正在等待另一项任务完成

    $image.one('built.cropper', function () {
                  URL.revokeObjectURL(blobURL); // Revoke when load complete
                }).cropper('reset', true).cropper('clear').cropper('replace', blobURL);
    
    1. 在阶段之间,订单由执行计划给出,因此每个阶段都在等待,直到完成之前。这是正确的假设吗?
    2. 我期待你的回答。

      此致  林

      HadoopRDD[0] || MappedRDD[1] || MapPartitionsRDD[4] || ZippedWithIndexRDD[6]
      

1 个答案:

答案 0 :(得分:0)

(8)表示rdd中的分区数。 关于第3点,您的假设是正确的。一旦完成属于某个阶段的所有任务,那么下一阶段任务就会开始