SparkContext初始化流程图

Spark系列(三)SparkContext分析-LMLPHP

其它说明:

  1. 在createTaskScheduler会根据不同的提交模式创建backend对象(如本地模式为LocalBackend)。
  2. 在SparkDeploySchedulerBackend中构造ApplicationDescription对象appDesc,该对象描述了Application最大需要多少CPU core,每个slave上需要多少内存.
  3. Spark系列(三)SparkContext分析-LMLPHP
  4. 在DAGScheduler和TaskScheduler对象初始化完成后,每执行到一个Action操作就会创建一个job,该job会提交到DAGScheduler,划分为多个stage然后为每个stage创建一个TaskSet。
  5. TaskScheduler把TaskSet中的每一个task提交到executor上执行

Spark系列(三)SparkContext分析-LMLPHP

  1. 关于 DAGScheduler和TaskScheduler的分析在后面章节中说明。
04-16 18:55