2019独角兽企业重金招聘Python工程师标准>>>
Spark是分布式计算平台,最核心的就是他的任务调度体系。
DagSchedule的作用
最主要方法是SubmitJob。负责Job的调度,Job划分成多个Stage,每个Stage设置一个TaskSetManager,管理多个Task。调度TaskSchedulerImpl执行Task。
TaskSchedulerImpl的作用
目前是TaskScheduler接口的唯一实现类。任务调度,以TaskSet为单位进行任务调度,每个TaskSet包含一组Task。TaskScheduler管理着TaskSetManager,而TaskSetManager管理着一组关联的Task的生命周期。
TaskSetManager
管理一组Task的生命周期,元数据等。
ScheduleBackEnd
各种Endpoint的实现类,负责在集群间传递任务调度的消息。