task scheduler什么意思_女贞子的功效与作用

task scheduler什么意思_女贞子的功效与作用前言本文隶属于专栏《1000个问题搞定大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和参考文献请见1000个问题搞定大数据技术体系正文TaskScheduler的核心任务是提交TaskSet到集群运算并汇报结果。(1)为TaskSet创建和维护一个TaskSetManager,并追踪任务的本地性以及错误信息。(2)遇到Straggle任务时,会放到其他节点进行重试。(3)向DAGScheduler

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

前言

本文隶属于专栏《1000个问题搞定大数据技术体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!

本专栏目录结构和参考文献请见1000个问题搞定大数据技术体系

正文

TaskScheduler 的核心任务是提交 TaskSet 到集群运算并汇报结果。

( 1 )为 TaskSet 创建和维护一个 TaskSetManager ,并追踪任务的本地性以及错误信息。

( 2 )遇到 Straggle 任务时,会放到其他节点进行重试。

( 3 )向 DAGScheduler 汇报执行情况,包括在 Shuffle 输出丢失的时候报告 fetch failed 错误等信息。

TaskScheduler 源码类注释 (3.2.0-SNAPSHOT)

/** * 低层次的任务调度器接口,目前由 TaskSchedulerImpl 独家实现。 * * 此接口允许插入不同的任务调度程序。 * * 每个 TaskScheduler 为单个 SparkContext 安排任务。 * * 这些调度器从每个阶段的 DAGScheduler 中获取提交给它们的任务集,并负责将任务发送到集群、运行它们、在出现故障时重试以及减轻 straggle。 * * 它们将事件返回给 DAGScheduler。 */
private[spark] trait TaskScheduler

TaskSchedulerImpl 源码类注释 (3.2.0-SNAPSHOT)

/** * 通过 SchedulerBackend 为多种类型的集群调度任务。 * * 它还可以通过使用 LocalSchedulerBackend 并将 isLocal 设置为true来使用本地设置。 * * 它处理常见的逻辑,如确定作业之间的调度顺序、唤醒以启动推测性任务等。 * * 客户端应该首先调用initialize() 和start(),然后通过 submitTasks 方法提交任务集。 * * 线程:SchedulerBackends 和任务提交客户端可以从多个线程调用此类,因此它需要公共API方法中的锁来维护其状态。 * * 另外,一些 SchedulerBackends 要在这里发送事件时会自动同步,然后获取对我们的锁定,因此我们需要确保在锁定自己时不会尝试锁定后端。 * * 这个类是从许多线程调用的,特别是: * * * The DAGScheduler Event Loop * * The RPCHandler threads, 用来响应 Executors 的状态更新。 * * 周期性地恢复来自 CoarseGrainedSchedulerBackend 的所有供给,以适应延迟调度 * * task-result-getter threads * * 注意:Spark-RPC 框架中抛出的任何非致命异常都可能被吞没。 * * 因此,在resourceOffers、statusUpdate 等方法中引发异常不会使应用程序失败,但可能导致未定义的行为。 * * 相反,我们应该使用类似 TaskSetManger.abort() 的方法中止一个阶段,然后使应用程序失败(SPARK-31485)。 * * 延迟调度:延迟调度是一种为了提高集群和工作负载吞吐量而牺牲数据局部性的作业公平性的优化。 * * “延迟”的一个有意义的定义是自任务集使用其公平的资源份额以来经过了多少时间。 * * 由于在没有完全模拟的情况下计算此延迟是不切实际的,因此使用的启发式方法是 TaskSetManager 上次启动任务后的时间, * * 并且自上次提供其“公平份额”以来,没有因延迟调度而拒绝任何资源。 * * 当 resourceOffers 的参数“isAllFreeResources”设置为true时,启用“公平共享”。 * * “延迟调度拒绝”是指尽管存在挂起的任务(在TaskSetManager中实现),但资源未被利用的情况。 * * 传统的启发式方法只测量 TaskSetManager 上次启动任务以来的时间,可以通过将 spark.locality.wait.legacyResetOnTaskLaunch 设置为 true 来重新启用。 */
private[spark] class TaskSchedulerImpl
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183052.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 正则表达式(.*?)惰性匹配()

    正则表达式(.*?)惰性匹配()没什么可说的看这儿就行了,,特别是最后一条。1、.匹配任意除换行符“\n”外的字符;2、*表示匹配前一个字符0次或无限次;3、+或*后跟?表示非贪婪匹配,即尽可能少的匹配,如*?重复任意次,但尽可能少重复;4、.*?表示匹配任意数量的重复,但是在能使整个匹配成功的前提下使用最少的重复。如:a.*?b匹配最短的,以a开始,以b结束的字符串。如果把它应用于aabab的话,它会匹配aab……

    2022年7月15日
    20
  • 中国历年人口出生数1983至2020岁_中国历年出生人口数据

    中国历年人口出生数1983至2020岁_中国历年出生人口数据1983年:2052万1984年:2050万1985年:2196万1986年:2374万1987年:2508万1988年:2445万1989年:2396万1990年:2374万1991年:2250万1992年:2113万1993年:2120万1994年:2098万1995年:2052万1996年:2057万1997年:2028万1998年:1934万1999年:1827万2000年:1765万2001年:1696万2002年:1641万2003年:1594万200.

    2025年9月15日
    6
  • Mysql中用SQL增加、删除字段,修改字段名、字段类型、注释,调整字段顺序总结

    Mysql中用SQL增加、删除字段,修改字段名、字段类型、注释,调整字段顺序总结1.增加一个字段 代码如下 复制代码 //增加一个字段,默认为空altertableuseraddCOLUMNnew1VARCHAR(20)DEFAULTNULL; //增加一个字段,默认不能为空altertableuseraddCOLUMNnew2VARCHAR(20)NOTNULL; 2….

    2022年6月1日
    54
  • Idea激活码最新教程2022.1.2版本,永久有效激活码,亲测可用,记得收藏

    Idea激活码最新教程2022.1.2版本,永久有效激活码,亲测可用,记得收藏Idea 激活码教程永久有效 2022 1 2 激活码教程 Windows 版永久激活 持续更新 Idea 激活码 2022 1 2 成功激活

    2025年5月25日
    3
  • noip宝藏_寻宝官方网

    noip宝藏_寻宝官方网看到这道题,我就想到了直接根据行走路径进行操作,结果——一片WA,悲伤,那么除了这样,怎么解决呢?我们用到的方法是用数组存储每层楼有向上楼梯的个数,以及每个房间的情况,然后将要走的次数模上总个数,再用得到的值加上最初的房间,即可。下面是代码:#include<bits/stdc++.h>usingnamespacestd;constintN=100…

    2022年8月22日
    7
  • 理解self,this,parent

    理解self,this,parent

    2021年6月30日
    85

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号