Job,Stage,Task的区分
DAG调度
DAG:有向无环图
每个job划分为多个stage(阶段)
(a)倒推法划分 -栈
从Job的最后一个RDD向前推依赖关系
(b)判定子RDD和父RDD之间的依赖关系
宽依赖,产生shuffle,划分stage
TaskScheduler 任务调度
task的调度
调度各个Stage中Task的执行,按照从前往后顺序执行stage中的task即可,
task放到executor中执行。
shuffleMapStage
除去最后一个Stage中其他stage
每个stage中的task产生的结果,类似于MapTask一样
resultStage
job 中的最后一个,产生结果数据,类似于MapReduce中reduceTask
Spark任务调度