任务列表模块当前支持批量设置基线批量补数据批量转交任务批量设置优先级以及任务血缘,同时也支持对任务及任务节点信息的查看。

批量转交任务

支持项目负责人、管理员、任务负责人以及具有转交任务权限的用户,可以将任务转交给当前项目的其他成员。转交任务权限可前往项目中心 - 权限管理 - 功能权限中进行配置。
任务列表 - 图1

目前有两种转交任务方式:

  • 第一种是选择若干任务后,在顶部点击批量转交任务按钮。
  • 第二种是在某个具体任务的操作列,点击更多按钮选择转交任务功能。在弹框中设置新负责人即可。
    20 任务运维05.png
注意: 如果是当前用户不是项目负责人或管理员,进行批量转交任务时,只会转交自己作为负责人的任务。

批量设置基线

使用基线运维前需要先在值班组管理基线管理中完成相关配置。完成后,选择批量任务使用批量设置基线功能或者对某个任务使用设置基线功能都可对任务进行基线设置。

设置基线时,一般需要评估任务的稳定产出时间,并挂载到自己团队的合适的基线上。当前,仅支持对调度周期是的任务设置基线。

注意: 目前仅能在任务运维中心配置,项目负责人和管理员可设置所有任务的,任务负责人只能设置自己的任务。

批量设置优先级

支持项目负责人、管理员、任务负责人以及具有设置优先级权限的用户,可以调整任务的优先级。设置优先级权限可前往项目中心 - 权限管理 - 功能权限中进行配置。
任务列表 - 图3

支持用L1~L4表示任务优先级,L1为最低优先级。优先级会基于任务依赖定时刷新,从下游向上游传递升级。当前每十分钟将优先级传递给上游任务。

目前优先级的最主要用法是在周期实例运维加速器中进行任务的筛选,后续会用于任务资源的调控。

任务优先级传递说明: 任务A依赖任务B,A为L3,B为L1,则系统会将B升级到L3。在显示上,如果原始优先级和最终优先级一致,则直接显示一个Ln,如“L1”;如果被升级,则显示为“Ln(Lm ↑)”,如“L4(L1 ↑)”。

批量补数据

批量补数据功能请参考补数据实例运维

任务血缘管理

任务血缘管理支持血缘诊断和查看全局血缘,点击任务列表右上角“任务血缘管理”,进入血缘管理页面。
任务列表 - 图4

血缘诊断

血缘诊断支持诊断SQL节点是否存在多余依赖和缺少依赖的情况。对于多余依赖和缺少依赖的判断依据如下:

多余依赖

  1. 任务依赖节点:
    1. 当前任务依赖的上游节点若是SQL节点,则找到其输出表,判断是否为当前任务中SQL节点的输入表,若不是,则为多余依赖;
    2. 当前任务依赖的上游节点若是末级节点,则找到其任务中SQL节点的输出表,判断是否为当前任务中SQL节点的输入表,若不是,则为多余依赖;
    3. 当前任务依赖的上游节点若既不是SQL节点,也不是末级节点,则跳过判断。
  2. 节点依赖节点(仅判断SQL节点是否有多余依赖):
    1. 当前任务中SQL节点依赖的上游节点若是SQL节点,则找到其输出表,判断是否为当前SQL节点的输入表,若不是,则为多余依赖;
    2. 当前任务中SQL节点依赖的上游节点若是末级节点,则找到其任务中SQL节点的输出表,判断是否为当前任务中SQL节点的输入表,若不是,则为多余依赖;
    3. 当前任务中SQL节点依赖的上游节点若既不是SQL节点,也不是末级节点,则跳过判断。

缺少依赖

根据任务中SQL节点的输入表,找到对应上游任务,判断当前任务或SQL节点是否依赖上游任务,若没有,则为缺少对应依赖。

任务列表 - 图5

注意: 当前仅支持判断“SQL”节点的上游依赖情况,推荐数据来源于任务的运行实例,因此请确保上游表的产出任务至少在线上调度运行过一次。

全局血缘

支持查看当前项目-集群下所有已上线的任务血缘图,支持搜索任务。通过点击任务,可以查看任务的基本信息,通过点击“查看无依赖任务”,可以查看没有上下游依赖的任务列表。

使用限制: 如果当前项目-集群下,任务依赖数超过1000,则不支持展示全局血缘;如果需要查看血缘,需前往任务详情页面查看具体任务的血缘图。

任务列表 - 图6

任务列表

任务列表展示了当前所有任务的状态,包括调度状态、调度信息、所属基线、血缘统计信息、最近执行时间、最近提交时间及相关操作。
任务列表 - 图7

基本信息 说明
任务名称 显示任务名称,如果当前任务已失效,则会在名称下面显示调度已过期失效。
相关用户 包括:负责人、创建人以及提交人。当只选择一个时,例如选择负责人,则此处只显示负责人。
调度状态 包括已调度和未调度。
调度信息 包括下次执行时间、首次执行时间、调度失效时间、调度周期、队列。
所属基线 显示当前任务挂载的基线信息,点击齿轮图标可进行“展示关联下游基线”设置,设置后列表中会展示任务关联下游所属的基线。任务列表 - 图8
血缘统计信息 统计该任务的上下游任务数,包括全部上下游任务数、直接上下游任务数。其中全部上下游任务数后面括号内会显示总层数,若一个任务同时对应多层则按最大层数计数。
最近执行时间 任务最近一次执行时间。
最近提交时间 任务最近一次提交时间。
操作 支持编辑、补数据、转交任务、设置基线、设置优先级、暂停调度/恢复调度功能。

点击某个任务前的任务列表 - 图9图标可对当前任务进行展开,展开后显示节点列表,可了解各节点的启用状态节点类型质量监控配置情况以及执行历史
任务列表 - 图10

在任务列表中,如果勾选了“展示关联下游基线”,则在任务列表筛选基线时,也会命中任务下游关联基线是所筛选基线的任务。例如,任务A的下游任务B所关联的基线是数仓8点基线,并且在任务列表中勾选了“展示关联下游基线”,此时在任务列表中筛选基线为“数仓8点基线”的任务,则会同时展示任务A与任务B,方便用户及时确认任务A的下游影响范围与重要性。

暂停调度/恢复调度

当某一个任务在接下来一段时间内不需要调度运行时,通过“暂停调度”功能对任务执行暂停调度操作,之后可通过“恢复调度”功能进行恢复。暂停调度/恢复调度默认不开启,需要运维人员手动开启。
任务列表 - 图11
开启后,项目负责人、管理员、任务负责人以及具有暂停、恢复调度权限的用户可进行设置。暂停、恢复调度权限可前往项目中心 - 权限管理 - 功能权限中进行配置。
任务列表 - 图12

任务暂停调度后,会影响实例运维、基线告警、运维大盘,其具体情况如下:

  • 实例运维:暂停调度的操作在下一周期开始生效,暂停调度中的任务生成的实例会在调度时间被执行为空跑,且不会在实例列表展示。若是任务依赖节点的情况,则下游实例也会被执行为空跑,且不会在实例列表中展示;若是节点依赖节点的情况,则下游实例可能会出现异常终止的情况。
  • 基线告警:被暂停调度的任务所生成的被执行空跑的实例不会触发基线报警。若是任务依赖节点的情况,则下游实例也不会触发基线报警;若是节点依赖节点的情况,则下游实例可能会因为异常终止而出发基线关联实例运行失败的报警。
  • 运维大盘:被暂停调度的任务会被统计为当天已完成的任务。若是任务依赖节点的情况,则下游实例也会被统计为当天已完成的任务;若是节点依赖节点的情况,则下游实例可能会因为异常终止而被统计为当天失败的任务。

任务详情

在任务列表中点击某个任务可进入任务详情页面。
任务列表 - 图13

任务详情页上方提供了对任务操作的功能,包括编辑补数据转交任务设置基线设置优先级以及取消调度
任务列表 - 图14

  • 编辑:点击编辑按钮,会自动跳转至该任务的离线开发页面,方便使用人员对任务进行编辑。
  • 补数据:点击补数据按钮,会在侧边弹出补数据的配置页面,可在此处进行单个任务的补数据操作,补数据的操作可参考补数据实例运维
    任务列表 - 图15

  • 转交任务:点击转交任务按钮选择项目中成员,可变更任务负责人。
    任务列表 - 图16

  • 设置基线:点击设置基线按钮,可在弹框中设置已创建的基线,设置完成后任务会被挂载到这个基线上进行基线运维。
    任务列表 - 图17

  • 设置优先级:点击设置优先级按钮,可在弹框中设置原始优先级(原始优先级指的是任务本身的优先级,由于受任务依赖影响,优先级会从下游向上游传递升级,因此优先级存在变化情况)。
    任务列表 - 图18

  • 取消调度:具有取消调度权限的用户或是项目负责人、管理员、任务创建人员可点击取消调度按钮对任务进行取消调度操作。取消调度会将任务变成未调度状态,且后续不再生成调度实例,需谨慎操作。
    任务列表 - 图19

详细信息

详细信息页签主要展示任务的基本信息调度信息以及节点信息

  • 基础信息:包括任务名称、提交人、任务类型、创建人、调度设置人以及最近修改时间信息。
    任务列表 - 图20

  • 调度信息:包括最近执行时间、首次执行时间、下次执行时间、调度失效时间以及调度周期信息。
    任务列表 - 图21

  • 节点信息:包括该任务下包含的各节点状态、类型、是否配置质量监控以及查看节点功能。
    任务列表 - 图22
    点击查看节点按钮,可查看节点的SQL编辑器及节点运行参数设置。
    任务列表 - 图23

任务血缘

任务血缘页签中展示当前任务的血缘情况。
任务列表 - 图24

血缘支持范围查看,如下:

  • 在范围处点击任务列表 - 图25按钮表示查看任务血缘的上下游。
    任务列表 - 图26

  • 在范围处点击任务列表 - 图27按钮表示查看任务血缘的上游。
    任务列表 - 图28

  • 在范围处点击任务列表 - 图29按钮表示查看任务血缘的下游。
    任务列表 - 图30

血缘层数:表示当前任务的上下游层数,默认为1表示展示上下游各一层血缘。层数每+1,则上下游血缘分别多展示一层。例如此处设置层数为2,血缘展示如下:
任务列表 - 图31

当画布中显示的任务较多时,可在搜索任务框中输入任务名称进行任务的定位。
任务列表 - 图32

点击任务节点,会在侧边弹出该节点详情,在详情中显示该任务节点的上下游全部任务层数,以及直接上下游任务数。在基础信息中,显示任务名称、所属项目以及负责人。在调度信息中,显示调度状态、调度周期、首次执行时间以及调度失效时间。
任务列表 - 图33

点击任务名称可跳转对应的任务详情页面。

执行历史

执行历史页签中展示任务的执行曲线以及执行历史

执行曲线用来表示线上调度重跑以及补数据的情况,横轴表示执行日期,纵轴表示执行时长,单位为s(秒),支持展示近25次、近50以及近100次的执行情况。
任务列表 - 图34

执行历史已列表的形式展示当前任务产生的实例情况,包括实例ID状态运行方式计划执行时间开始执行时间结束时间运行时长以及详情。点击详情按钮可跳转至对应的实例详情页面。
任务列表 - 图35

执行计划

执行计划用来展示最近10条的线上调度和补数据执行计划。
任务列表 - 图36

点击实例中的查看跨流依赖详情,可查看上游依赖详情。页面中包括任务依赖节点依赖信息,点击节点的查看实例详情按钮可跳转至实例详情页面,了解实例情况。
任务列表 - 图37

基线信息

在任务详情页面查看基线信息时,支持查看下游所属基线(包括跨项目依赖),并查看下游任务列表,方便用户快速确认任务关联下游基线信息,并确认任务的优先级等重要性信息。
任务列表 - 图38