zoukankan      html  css  js  c++  java
  • Spark的 DAGschedule & task schedule 区别以及相互联系

    这2个概念很容易混淆,需要写一遍文章梳理

    spark的 DAGschedule & task schedule 区别以及相互联系


    在我们的应用程序的mian 方法中我们定义了sparkcontext ,sparcontext 会帮我们生成这两个调度器 DAGschedule(高级调度器) & task schedule(低级调度器)


    DagScheduler:DagScheduler是一个高级的scheduler 层,他实现了基于stage的调度,他为每一个job都计算stage,跟踪哪一个rdd和stage的输出被物化(固化),以及寻找到执行job的最小的调度,然后他会将stage作为tasksets提交给底层的TaskScheduler,由TaskScheduler执行。
     
    TaskScheduler:每一个taskScheduler只为一个单独的SparkContext进行调度安排tasks,DAGScheduler会为每一个stage向TaskScheduler提交Tasksets(也就是说TaskSets是在DAGScheduler完成组装),TaskScheduler会负责向cluster发送tasks,并且调用backend来运行task。并且在tasks失败的时候,重试,然后会将运行task,重试task的事件返回给DAGScheduler。


    以上内容是这两个schedule 的主要区别 ,但不是全部 ,梳理中,,,,,

  • 相关阅读:
    Gym
    HDU
    HDU
    POJ
    洛谷P3690 Link Cut Tree (动态树)
    Gym
    P4294 [WC2008]游览计划 (斯坦纳树)
    洛谷P3264 [JLOI2015]管道连接 (斯坦纳树)
    HDU
    Controller调试接口
  • 原文地址:https://www.cnblogs.com/TendToBigData/p/10501328.html
Copyright © 2011-2022 走看看