文档

周期任务补数据

更新时间:

周期任务补数据功能用于对周期任务在指定的历史业务日期内进行数据回刷。周期任务开发完成并提交发布后,任务会按照调度配置定时运行,如果您希望在指定时间段运行周期任务或回刷历史一段时间区间的数据,可以使用补数据功能。节点使用的调度参数会根据补数据选择的业务时间自动替换成对应的值。本文为您介绍如何对周期任务进行补数据。

应用场景

补数据功能多用于以下应用场景:

  • 新开发的周期任务,只能从第二天开始调度。如果您需要马上查看历史分区数据,可以执行补数据操作。

  • 上游依赖的任务重跑或补数据导致历史分区数据刷新。您可以通过补数据功能,回刷下游任务的历史分区数据。

  • 业务的历史数据存在遗漏,需要定时回刷历史数据。

补数据模式

当前,运维中心补数据功能支持对当前任务和对当前任务及下游任务进行补数据,详细说明如下:

  • 补当前任务:即当前任务,用于对当前任务进行补数据操作。适用于以下场景:

    • 对当前节点进行数据回刷,而无需更新下游节点数据。

    • 当前任务计算逻辑变更,您可以先对当前任务进行补数据验证计算逻辑正确性,再对下游任务进行数据回刷。

  • 补当前及下游任务:即当前任务及下游任务,适用于对全链路数据进行刷新的场景。

补数据操作入口

  1. 在Dataphin首页,单击顶部菜单栏的研发

  2. 按照下图操作指引,选择相应的补数据模式,对周期任务进行补数据。

    image.png

    说明

    补数据操作也支持在周期任务的DAG图中进行补数据。更多信息,请参见周期任务DAG图

对当前任务补数据

参数

描述

基本信息

补数据实例名称

系统自动生成,命名格式为节点名称_运行日期_实例化编号,您也可以进行手动更改。

选择字段

如果您为明细及汇总表任务补数据,则需要选择补数据的字段。

image.png

详细说明如下:

  • 如果主键或来源表变更,为了保障数据一致性和正确性,仅支持选择全表补数据模式。

  • 如果主键或来源表未发生变更,您可以选择全表补数据模式或指定字段补数据模式:

    • 全表:适用于数据表的所有字段都需要补数据的场景。

      说明

      不包括注册上挂字段。

    • 指定字段:适用于需要自定义补数据的字段的场景,受到如下约束:

      • 有变更字段

        • 对于维度逻辑表和事实逻辑表,系统将自动识别并选中计算逻辑发生变更的字段,不支持取消选中,保障数据按照最新计算逻辑运行。

        • 对于汇总逻辑表,系统会根据指标的业务相关性原则(引用相同的业务限定或原子指标)、归属同一物化节点的一致性原则,系统提示选中进行补数据的连带字段,提供数据正确性和业务稳定性的保障。

          例如,指标A和指标B的业务限定相同,当该业务限定发生变更时,选择指标A进行补数据,系统会自动根据业务相关性提示,连带选中指标B一起补数据。如果该业务限定未发生变更,则选中指标A补数据时,指标B可以不选,此时不会影响指标B的计算逻辑。

      • 无变更字段:您可以根据业务需求,选中需要补数据的字段。

运行配置

运行时间

支持立即运行自定义运行。

立即运行:完成配置后,立即生成补数据实例进行补数据任务。

自定义:自定义指定补数据实例运行时间点,补数据实例将在自定义的时间开始调度。

说明
  • 自定义运行时间需晚于当前时间。

  • 完成自定义运行时间配置后,业务日期最晚可选择至自定义日期的当天。

  • 周期性定时执行的补数据任务将在定时运行时间的前一天23点生成待生成实例。

业务日期

选择需要进行补数据的业务日期区间,根据任务的调度周期配置业务日期,详细说明如下:

  • 调度周期为日、周、月的任务可以选择按区间按周期自定义业务日期。各选项适用场景说明如下:

    • 按区间:适用于需要回刷多个连续业务日期的数据。

      image

      说明

      如果您只需要对单天进行补数据,则开始时间和结束时间选择相同日期即可。

    • 按周期用于需要回刷多个连续业务日期内每周中星期或每月中的日期数据。

      • 每周:回刷连续时间内每周所选中的星期。

        image..png

      • 每月:回刷连续时间内每月所选中的日期。

        说明

        月末指每月的最后1天。

        image..png

    • 自定义:适用于需要回刷多个不连续业务日期的数据。您可以手动输入业务日期,业务日期的格式为YYYY-MM-DD。如果需要回刷多个业务日期的数据,则多个业务日期使用回车分割。

      image

  • 调度周期为小时分钟的任务需要您先选择业务日期,再选择精确到分钟的补数据时间区间,定义了补数据的业务日期及时间区间。

    image

高级配置

单实例补数据

仅支持事实逻辑表进行选择。

可通过一个补数据实例同时覆盖更新本事件事实逻辑表所有选定日期(区间范围内)的数据,相比普通多实例并发补数据,可以节约计算资源,大幅减少补数据时间。

image

并发运行组数

并发运行组数用于控制同时有多少个补数据进程在运行。您可以选择并发运行的组数,系统支持最少并发运行1组,最多并发运行12组

  • 业务日期的跨度时间小于并发运行组数,则实际并行组数为业务日期天数。

  • 业务日期的跨度时间大于并发运行组数,则可能兼有串行和并行。相同组内的实例按业务日期顺序运行,不同组之间的实例并行运行。例如,业务日期是1月11日~1月13日,并发运行组数为2,11号和12号为一组,13号为一组,11号和13号的实例同时开始运行,12号的实例则会在11号的实例运行完成后开始运行。

    说明

    所选节点中存在跨周期依赖时不支持并发运行。

补数据顺序

可选择根据业务时间正序或倒序进行补数据。

说明

所选节点中存在跨周期依赖、自依赖时不支持业务日期倒序补数据。

暂停调度任务对应实例

配置暂停调度的任务生成的补数据实例的运行状态:

  • 暂停运行(可能会阻断补数据进程):即暂停调度的任务生成的补数据实例均暂停运行,会阻断下游实例正常运行。

    说明

    适用于当前任务及其下游任务均不需要运行的场景。

  • 空跑:若选择空跑,则选中的暂停任务生成的补数据实例将直接空跑成功。

    说明

    适用于当前任务无需运行,但下游任务需要按照调度配置正常运行的场景。

  • 正常运行:暂停状态的任务生成的补数据实例均正常运行。

    说明

    适用于当前节点被设置为暂停调度,在选中的补数据业务日期需要正常运行的场景。

空跑调度任务对应实例

配置空跑调度的任务生成的补数据实例的运行状态:

空跑:若选择空跑,则选中的空跑调度任务生成的补数据实例将直接空跑成功。

正常运行:空跑状态的任务生成的补数据实例均正常运行。

对当前及下游任务补数据

参数

描述

基本信息

补数据实例名称

系统自动生成,命名格式为节点名称_运行日期_实例化编号,您也可以进行手动更改。

选择字段

如果您为明细及汇总表任务补数据,则需要选择补数据的字段。

image.png

详细说明如下:

  • 如果主键或来源表变更,为了保障数据一致性和正确性,仅支持选择全表补数据模式。

  • 如果主键或来源表未发生变更,您可以选择全表补数据模式指定字段补数据模式

    • 全表:适用于数据表的所有字段都需要补数据的场景。

    • 指定字段:适用于需要自定义补数据的字段的场景,受到如下约束:

      • 有变更字段

        • 对于维度逻辑表和事实逻辑表,系统将自动识别并选中计算逻辑发生变更的字段,不支持取消选中,保障数据按照最新计算逻辑运行。

        • 对于汇总逻辑表,系统会根据指标的业务相关性原则(引用相同的业务限定或原子指标)、归属同一物化节点的一致性原则,系统提示选中进行补数据的连带字段,提供数据正确性和业务稳定性的保障。

          例如,指标A和指标B的业务限定相同,当该业务限定发生变更时,选择指标A进行补数据,系统会自动根据业务相关性提示,连带选中指标B一起补数据。如果该业务限定未发生变更,则选中指标A补数据时,指标B可以不选,此时不会影响指标B的计算逻辑。

      • 无变更字段:您可以根据业务需求,选中需要补数据的字段。

补数据范围

下游任务选择

支持通过列表模式海量模式选择需要补数据的下游任务:

说明

若起点任务是逻辑表,下游任务展示范围取决于选中需要补数据的逻辑表字段。

  • 列表模式:适用于所有层级的下游任务,总共最多2000个。且任务依赖可快捷选择1~10层以及全部层级。

    image.png

    重要

    勾选节点时,建议同时勾选该节点引用了跨节点参数的所有上游节点。更多信息,请参见参数配置及使用节点参数

    过滤暂停任务及其下游

    • 默认勾选,选中后,列表不展示指定层级和筛选条件下,调度方式为暂停调度的节点及其全部下游,同时取消已勾选的暂停任务。

    • 对于逻辑表,只要包含了暂停的字段即被过滤;依赖下游列表中被标识了暂停的逻辑表包含的所有字段的下游任务也均被过滤。

      说明

      下游逻辑表字段只能整体选中补数据,不能只过滤掉暂停的字段。

  • 海量模式:如果列表模式无法满足您对下游节点选择的要求(例如节点数量过多,或者需要批量选择某些制定节点),您可以选择海量模式,海量模式将按照筛选条件从当前节点向下查找选中范围内的任务,并依据依赖关系进行编排。适用于需要全局补数据的场景。同时海量模式支持以下筛选参数:

    image.png

    重要
    • 若补数据任务过多,可能会造成资源紧张,影响周期任务运行,请根据依赖影响关系及数据产出需求合理选择。

    • 勾选节点时,建议同时勾选该节点引用了跨节点参数的所有上游节点。请参见参数配置及使用节点参数

    • 覆盖范围:支持通过指定项目指定节点输出名称当前节点的全部下游指定一级子节点及其全部下游指定终点来指定范围。

      • 指定项目:通过指定项目来指定补数据范围。

        image

      • 指定节点输出名称:通过填写节点输出名称来指定补数据范围。输入多个时,需以回车换行。最多输入1000个。

        image

      • 当前节点的全部下游:补当前节点的全部下游节点数据。

        image

      • 指定一级子节点及全部下游:补当前节点的若干个一级子节点及其全部下游节点。

        image

      • 指定终点:将补起点到终点链路上所有的节点数据。起点默认为当前节点,不支持修改。终点支持选择多个终点节点。

        image

        说明
        • 如果所选的终点节点非起点的下游节点,则只对起点和终点两个孤立节点进行补数据。

        • 逻辑表任务终点只支持选择到全表(全部字段)。

    • 选中范围内排除:指定需要在覆盖范围内排除的节点输出名称。默认选中排除暂停节点及其下游,同列表模式中过滤暂停节点及其下游

      说明
      • 在选中范围内排除某些任务后,补数据实例的DAG图上可能产生孤立的任务节点。

      • 适用于只对下游某一个任务节点进行补数据的场景。

    • 已选节点列表:海量模式下。支持查看已选的节点列表以确认补数据节点或单击导出已选节点列表导出为本地文件,文件格式为csv

      image

运行配置

运行时间

支持立即运行自定义运行。

立即运行:完成配置后,立即生成补数据实例进行补数据任务。

自定义:自定义指定补数据实例运行时间点,补数据实例将在自定义的时间开始调度。

说明
  • 自定义运行时间需晚于当前时间。

  • 完成自定义运行时间配置后,业务日期最晚可选择至自定义日期的当天。

  • 周期性定时执行的补数据任务将在定时运行时间的前一天23点生成待生成实例。

业务日期

选择需要进行补数据的业务日期区间,根据任务的调度周期配置业务日期,详细说明如下:

  • 调度周期为日、周、月的任务可以选择按区间按周期自定义业务日期。各选项适用场景说明如下:

    • 按区间:适用于需要回刷多个连续业务日期的数据。

      image

      说明

      如果您只需要对单天进行补数据,则开始时间和结束时间选择相同日期即可。

    • 按周期用于需要回刷多个连续业务日期内每周中星期或每月中的日期数据。

      • 每周:回刷连续时间内每周所选中的星期。

        image..png

      • 每月:回刷连续时间内每月所选中的日期。

        说明

        月末指每月的最后1天。

        image..png

    • 自定义:适用于需要回刷多个不连续业务日期的数据。您可以手动输入业务日期,业务日期的格式为YYYY-MM-DD。如果需要回刷多个业务日期的数据,则多个业务日期使用回车分割。

      image

  • 调度周期为小时分钟的任务需要您先选择业务日期,再选择精确到分钟的补数据时间区间,定义了补数据的业务日期及时间区间。

    image

高级配置

并发运行组数

并发运行组数用于控制同时有多少个补数据进程在运行。您可以选择并发运行的组数,系统支持最少并发运行1组,最多并发运行12组

  • 业务日期的跨度时间小于并发运行组数,则实际并行组数为业务日期天数。

  • 业务日期的跨度时间大于并发运行组数,则可能兼有串行和并行。相同组内的实例按业务日期顺序运行,不同组之间的实例并行运行。例如,业务日期是1月11日~1月13日,并发运行组数为2,11号和12号为一组,13号为一组,11号和13号的实例同时开始运行,12号的实例则会在11号的实例运行完成后开始运行。

    说明

    所选节点中存在跨周期依赖时不支持并发运行。

补数据顺序

可选择根据业务时间正序或倒序进行补数据。

说明

所选节点中存在跨周期依赖时不支持按业务日期倒序补数。

本节点是否空跑

选择本任务是否需要空跑:

  • :当前任务对应的补数据实例空跑运行,即一调度到该任务便直接返回成功,没有真正的执行该任务。

    说明

    适用于当前节点不需要补数据,但是需要以当前节点为起点选中下游进行补数据的场景。

  • :本节点正常运行。

暂停调度任务对应实例

配置暂停调度的任务生成的补数据实例的运行状态:

  • 暂停运行(可能会阻断补数据进程):即暂停调度的任务生成的补数据实例均暂停运行,会阻断下游实例正常运行。

    说明

    适用于当前任务及其下游任务均不需要运行的场景。

  • 空跑:若选择空跑,则选中的暂停任务生成的补数据实例将直接空跑成功。

    说明

    适用于当前任务无需运行,但下游任务需要按照调度配置正常运行的场景。

  • 正常运行:暂停状态的任务生成的补数据实例均正常运行。

    说明

    适用于当前节点被设置为暂停调度,在选中的补数据业务日期需要正常运行的场景。

空跑调度任务对应实例

配置空跑调度的任务生成的补数据实例的运行状态:

  • 空跑:若选择空跑,则选中的空跑调度任务生成的补数据实例将直接空跑成功。

  • 正常运行:空跑状态的任务生成的补数据实例均正常运行。

小时区间影响范围

如果是小时、分钟任务,则还需要配置生效范围:

  • 不影响日/周/月调度任务(选中即运行):即下游任务不受小时区间选择的影响,全部运行。

  • 日/周/月调度任务只有定时运行时间在选中小时区间内才会运行:即下游任务受小时区间影响,只有定时运行时间在选中小时区间内才运行。

后续步骤

补数据操作提交后,您可以对补数据实例进行运维管理,例如查看运行日志、查看节点代码、终止实例运行等操作。更多信息,请参见补数据实例运维概述

  • 本页导读 (0)
文档反馈