spark任务调度流程

 

 job中的RDD会形成有向无环图(DAG),然后这个DAG会提交给DAGScheduler对象(DAGScheduler是调度任务中的高层调度器,他是在创建sparkcontext也就是启动Driver的时候被创建出来的),它会将job中的RDD依赖关系,根据宽依赖划分成一个个的stage。然后这些被划分好的stage按照taskset的形式发送到TaskScheduler中(TaskScheduler是调度任务中低层调度器,他也是在创建sc的时候创建出来的),它遍历taskset,将task发送到worker的executor中去执行。在TaskScheduler有可能因为各种原因传输失败,他会有三次失败重连,如果还没传输成功,他会认为是stage有问题,就会推到DAGScheduler中尝试4次,如果还是失败,则application中的job就彻底失败,印象接下来的job,但不影响之前成功的job。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值