一、任务调度和资源调度的区别
1.任务调度是通过DAGScheduler、TaskScheduler、SchedulerBackend等进行的作业调度
2.资源调度是指应用程序如何获得资源
3.任务调度是在资源调度的基础上进行的,没有资源就没有任务
二、资源调度原理
1.因为Master负责资源管理和调度,所以资源调度的方法shedule位于Master.scala这个类中,当注册程序或者资源发生改变时都会导致schedule的调用,例如注册程序的时候
2.Schedule调用的时机:每次有新的应用程序提交或者资源状况或者集群资源状况发生改变的时候,包括Executor增加或者减少、worker增加或者减少。