DAGScheduler 和 TaskScheduler 的关系

DAGScheduler 和 TaskScheduler 的关系_第1张图片

DAGScheduler 和 TaskScheduler的联系

让我们看看这个图,
1.[Applicatio 1] Driver(代表一个Application)
2. [Job ==>1] 在SparkContext的创建过程中,sc会创建DAGScheduler和TaskScheduler,DAGScheduler主要对application划分stage,创建一批task放到taskset中用于执行application
3. [stage ==>2] 如何来划分stage,是有相应的stage的划分算法–>就根据rdd是否宽依赖来划分的,
4. [TaskSet] 假设我们rdd有三个分区partition,那么会产生三个task,存放到TaskSet,
5. [Task] TaskScheduler就会接收到DAGScheduler的一个通知吧,从taskSet中推送task任务到worker中的executor进程中去执行任务,在taskscheduler中根据,程序的启动方式,创建一个实现,ShedulerBackend
6. SchedulerBackend,不同的子类对应不同的集群模式

 

转自:https://blog.csdn.net/qq_16103331/article/details/53425570

注:如有侵权,请联系删除

你可能感兴趣的:(DAGScheduler 和 TaskScheduler 的关系)