全部产品
Search
文档中心

数据管理 DMS:配置任务流依赖检查节点

更新时间:Jun 08, 2023

任务编排的任务流依赖检查节点可实现任务流自依赖或跨任务流间依赖,依赖的目标对象可以是某个任务流或任务节点。本文介绍配置任务流依赖检查节点的步骤。

应用场景

  • 跨任务流依赖:任务流A需要在任务流B运行成功后才能执行。

    例如,每周一凌晨2点执行任务流A,训练预测推荐模型。执行任务流A需要利用(任务流B产出的)上周一~周日的业务数据。

  • 自依赖:任务流A需要在自己之前运行成功过,才能执行。

    例如,每天的数据清洗任务(任务流A)是否执行,取决于上一次数据清洗是否成功。

注意事项

对于第一次新建的任务流,自依赖至少需要一个已经成功运行的任务:

  • 手动触发任务流:选择任务流依赖检查节点下游的节点,单击试运行当前节点从当前开始试运行,即可跳过任务流依赖检查节点,产生运行成功的任务。

  • 定时触发任务流:在任务流详情页面,单击xia图标,选择空跑选项。

    说明

    空跑功能会产生一条成功的定时触发记录(不实际运行任务流)。

  • 多重任务依赖的业务,需要重复单个任务依赖节点的配置操作,即可完成。比如节点D需要依赖节点A、B、C,需要配置D依赖A、D依赖B、D依赖C。配置操作,请参见下方的操作步骤。

操作步骤

  1. 登录数据管理DMS 5.0
  2. 在顶部菜单栏中,选择集成与开发(DTS) > 数据开发 > 任务编排
  3. 单击目标任务流名称,进入任务流详情页面。

    如需新增任务流,具体操作,请参见新增任务流

  4. 在画布左侧任务类型列表中,拖拽任务流依赖检查节点到画布空白区域。

  5. 双击任务流依赖检查节点。

  6. 进入任务流依赖检查节点的配置页面,配置如下信息。

    配置项

    说明

    任务流

    搜索并选择目标任务流。

    说明
    • 如果您选择了当前的任务流,则可以实现自依赖。

    • 如果您选择的是其他任务流,则是跨任务流依赖。

    依赖项

    选择依赖项,取值:

    • 任务流:任务依赖的对象是目标任务流。

    • 单个节点:任务依赖的对象是当前任务流中已存在的节点。

    依赖配置

    配置依赖任务流的期望检查时间,包括开始时间偏移点结束时间偏移点

    系统默认开始、结束时间是基于任务流运行时间进行偏移:

    • 对于定时触发的任务流,业务时间的计算基于调度时间计算的。

    • 对于手动触发的任务流,业务时间的计算基于手动触发的那一刻。

    依赖配置示例:

    • 按天且开始调度时间为7点的任务流A依赖按天且开始调度时间为7点的任务流B的上一个调度周期,任务流A的依赖检查配置的开始时间偏移点不变,结束时间偏移点仅增加+1日。

      说明

      上一个调度周期是指最近一次完成调度的时间。调度时间查询请参见配置调度

    • 按天且开始调度时间为8点的任务流A依赖按天且开始调度时间为7点的调度任务流B的上一个调度周期,任务流A的依赖检查配置,开始不变,结束时间偏移点增加+1日且减少-1小时。

    • 按天且开始调度时间为8点10分的任务流A依赖按天且开始调度时间为7点的调度任务流B的上一个调度周期,任务流A的依赖检查配置,开始不变,结束时间偏移点增加+1日、减少-1小时、减少-10分。

    说明

    您可在当前配置页面上方,单击预览,在时间预览对话框中,检查任务流配置的时间是否符合预期、是否会使该节点运行成功。

    实例检查策略

    目标任务流通过检查的策略,取值:

    • 最后一次成功:当目标任务流中的最后一个任务流依赖节点执行成功,则整个任务流通过了任务流依赖检查。

    • 全部成功:目标任务流的所有任务流依赖节点都执行成功,才能通过任务流依赖检查。

    • 指定单次成功:设置目标任务流的第几次任务流依赖节点执行成功,可以通过任务流依赖检查。

    说明
    • 手动触发任务流时,仅检查手动触发的任务。

    • 定时触发任务流时,仅检查定时触发的任务。

    例如,任务流A曾经被手动触发并成功运行,但没有定时触发过任务流A,进行任务流A的任务流依赖检查时,试运行会成功,但定时触发会失败。

    检查类型

    任务流期望检查时间(包含开始时间和结束时间)的类型。

    • 运行时间:若选择运行时间,则开始、结束时间是基于任务流运行时间进行偏移。

    • 业务时间:若选择业务时间,则开始、结束时间是基于业务时间bizdate(默认为运行时间的前一天)进行偏移。

  7. 单击试运行

    • 如果执行日志的最后一行出现status SUCCEEDED,表明任务试运行成功。

    • 如果执行日志的最后一行出现status FAILED,表明任务试运行失败。

      说明

      如果试运行失败,在执行日志中查看执行失败的节点和原因,修改配置后重新尝试。