整个程序sparkContext调度的
DAGScheduler
DAG调度
DAG:有向无环图
每个job划分为多个stage(阶段)
(a)倒推法划分 -栈
从Job的最后一个RDD向前推依赖关系
(b)判定子RDD和父RDD之间的依赖关系
宽依赖,产生shuffle,划分stage
TaskScheduler
task的调度
调度各个Stage中Task的执行,按照从前往后顺序执行stage中的task即可,
task放到executor中执行。
stage分成2中
shuffleMapStage
除去最后一个Stage中其他stage
每个stage中的task产生的结果,类似于MapTask一样
resultStage
job 中的最后一个,产生结果数据,类似于MapReduce中reduceTask
10个executor,每个executor有10GB内存,10core,整个application可以同时运行多少个task数目
10*10