码迷,mamicode.com
首页 > 其他好文 > 详细

Spark源码剖析——SparkContext的初始化(六)_创建和启动DAGScheduler

时间:2018-07-15 23:21:58      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:ext   png   ons   cell   图片   eid   tor   类型   ssl   

6.创建和启动DAGScheduler

DAGScheduler主要用于在任务正式交给TaskSchedulerImpl提交之前做一些准备工作,包括:创建Job,将DAG中的RDD划分到不同的Stage,提交Stage,等等。创建DAGScheduler的代码如下:

技术分享图片

DAGScheduler的数据结构主要维护jobId和stageId的关系、Stage、ActiveJob、以及缓存的RDD的partitions的位置信息,见代码:

技术分享图片

DAGSchedulerEventProcessLoop能处理的消息类型,比如JobSubmitted、MapStageSubmitted、StageCancelled、JobCancelled、JobGroupCancelled、AllJobsCancelled、ExecutorAdded、ExecutorLost、BeginEvent、GettingResultEvent、completion、TaskSetFailed、ResubmitFailedStages。DAGSchedulerEventProcessLoop接受这些消息后会有不同的处理动作。DAGSchedulerEventProcessLoop的代码实现如下:

 技术分享图片

Spark源码剖析——SparkContext的初始化(六)_创建和启动DAGScheduler

标签:ext   png   ons   cell   图片   eid   tor   类型   ssl   

原文地址:https://www.cnblogs.com/swordfall/p/9314940.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!