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

应用场景

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

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

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

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

操作步骤

  1. 登录数据管理DMS 5.0
  2. 在顶部菜单栏中,选择集成与开发(DTS) > 数据开发 > 任务编排
  3. 单击目标任务流名称,进入任务流详情页面。
    说明 如需新增任务流,请参见新增任务流
  4. 在画布左侧任务类型列表中,拖拽任务流依赖检查节点到画布空白区域。
  5. 双击任务流依赖检查节点。
  6. 在任务流依赖检查节点的配置页面,配置任务流依赖检查节点。
    配置项 说明
    任务流 搜索并选择目标任务流。
    说明
    • 如果您选择了当前的任务流,则可以实现自依赖。
    • 如果您选择的是其他任务流,则是跨任务流依赖。
    依赖项 选择检查项:
    • 任务流:任务依赖的对象是目标任务流。
    • 单个节点:任务依赖的对象是某个任务节点。
    依赖配置 配置依赖任务流的期望检查时间,包括开始时间偏移点和结束时间偏移点。
    开始、结束时间基于业务时间bizdate(当前日期的前一天)进行偏移:
    • 对于定时触发的任务流,业务时间的计算基于调度时间。
    • 对于手动触发的任务流,业务时间的计算基于手动触发的那一刻。
    说明 在页面下方,单击时间预览,检查配置的依赖任务流的检查时间是否符合预期。
    实例检查策略
    • 最后一次成功:目标任务流的最后一个任务执行成功,则通过了任务流依赖检查。
    • 全部成功:目标任务流的所有任务都执行成功,才能通过任务流依赖检查。
    • 指定单次成功:设置目标任务流的第几次任务执行成功,可以通过任务流依赖检查。
    说明
    • 手动触发任务流时,只会检测手动触发的任务。
    • 定时触发任务流时,只会检测定时触发的任务。
    例如,任务流A曾经被手动触发并成功运行,但没有定时触发过任务流A,进行任务流A的任务流依赖检查时,试运行会成功,但定时触发会失败。
  7. 单击试运行
    • 如果执行日志的最后一行出现status SUCCEEDED,表明任务试运行成功。
    • 如果执行日志的最后一行出现status FAILED,表明任务试运行失败。
      说明 如果试运行失败,在执行日志中查看执行失败的节点和原因,修改配置后重新尝试。

注意事项

对于第一次新建的任务流,自依赖至少需要一个已经成功运行的任务:
  • 手动触发任务流:选择任务流依赖检查节点下游的节点,单击试运行当前节点从当前开始试运行,即可跳过任务流依赖检查节点,产生运行成功的任务。
  • 定时触发任务流:在任务流详情页面,试运行的右侧选择试运行下拉 > 空跑,空跑功能会产生一条成功的定时触发记录(不实际运行任务流)。