You need to enable JavaScript to run this app.
导航
数据回溯
最近更新时间:2024.11.18 19:55:14首次发布时间:2021.09.15 02:56:40

可通过数据回溯,完成任务在指定历史时间范围内的补数据/重跑操作,支持单任务、单任务及其下游、多任务、多任务及其下游的回溯操作,发起回溯后,您可在实例运维中查看回溯的实例。
本文将为您介绍数据回溯的操作。

1 使用场景

补数据:新任务提交上线后,需要补最近30天的数据,可通过数据回溯完成;
重跑:已有任务,变更了数据处理逻辑,需要对已产出数据进行修正,可通过数据回溯完成。
Image

2 进入数据回溯

  1. 登录 DataLeap租户控制台
  2. 在对应项目下单击运维中心 > 离线任务运维 > 数据回溯界面。

数据回溯模块分为发起的,收到的和待复查三部分,各模块的功能如下:
Image

3 发起的回溯列表

您可以在此查看该项目发起的全部数据回溯记录,支持新建数据回溯,支持根据发起时间,任务状态,回溯范围和任务层级等参数进行快速筛选。

3.1 新建数据回溯

进入数据回溯界面,在界面右上角单击新建数据回溯按钮,进入新建回溯界面:

3.1.1 回溯配置

参数

说明

回溯范围

回溯范围

选择回溯任务的范围:

  • 单任务:仅指定单个任务进行数据回溯。
  • 单任务及其下游:从回溯发起任务及其下游中,选择任务进行回溯。
  • 多任务:同时选择多个任务,进行回溯操作,支持跨项目选择任务,只需有跨项目任务的编辑权限即可。指定多任务回溯范围时,还可选择手动输入、URL 导入两种任务导入方式。
    其中 URL 导入方式需指定 URL 链接,需输入一个可访问的链接,且须按 JSON 数组格式返回任务 ID,输入 URL 后,单击开始导入按钮,便可查看对应的导入任务结果。
  • 多任务及其下游:同时选择多个任务,作为回溯的发起任务,从回溯发起任务及其下游中,选择多任务进行回溯。

说明

下游任务:根据上游回溯实例,按照依赖设置,获取下游依赖上游的对应实例,作为下游的回溯实例。

回溯任务

搜索回溯任务:

  • 您可输入任务名称、任务 ID、数据表、HDFS 路径等信息,进行回溯任务的搜索。
  • 您也可以单击根据上游设置回溯任务按钮,选择上游任务的任务名称、任务 ID 或 数据表等关键信息进行搜索,并指定任务所在项目范围后,根据依赖关系,会自动选择需要回溯的任务及其下游。
  • 选择回溯任务后,单击使用表生命周期查看按钮,支持您查看回溯任务、及其依赖的上游任务、数据产出、所涉及数据表的 TTL 信息和依赖设置等信息。

回溯业务时间

选择回溯的开始业务时间和结束业务时间。

回溯剪枝

回溯范围选择单任务及其下游、多任务及其下游时,可按需配置回溯剪枝。在回溯任务量较多时,您可填写回溯条件,来筛选回溯范围,仅回溯符合条件的任务,提升回溯效率。
回溯剪枝选择部分任务后,您需配置至少一个回溯筛选条件,可筛选的条件有:层级、优先级、项目名称、负责人、依赖类型、回溯建议、调度类型、调度频率等,您也可按需配置多个筛选条件,多个条件之间可以是“且”、“或”关系。

注意

为了保证回溯链路的连通性,除层级剪枝条件支持固定拉取前 N 层任务以外,其余剪枝项均按照层级自上而下筛选符合条件的任务,即当本层所有任务均不满足剪枝条件时,便不会获取下一层任务。

回溯规则

指定可调度时段

  1. 所有此次回溯/重跑生成的全部实例,均只允许在指定运行时段范围内提交调度。
  2. 若开启相关配置,系统则只在该指定时段,往引擎侧提交对应的回溯/重跑实例。
  3. “调度”不等价于“执行”,系统仅负责将对应实例提交调度至引擎,是否执行由引擎侧决定。

注意

若需要指定运行时段,则DataLeap产品需要购买 “DataOps 敏捷研发”、“湖仓一体” 或 “分布式数据自治” 的服务解决方案。

生成实例状态(单任务、多任务)

单任务、多任务回溯范围生成的实例,可选择以下生成实例的状态:

  • 运行后获得真实执行结果。
  • 直接置为成功。
  • 直接置为失败。

依赖检查(单任务、多任务)

单任务、多任务回溯范围生成的实例,可选择运行时是否遵循上游依赖设置:

  • 遵循依赖设置,上游完成后再开始执行。
  • 忽略上游依赖,立即执行,可能会存在任务回溯时,上游数据没有准备完成的情况,导致产出数据有异常情况。

下游自依赖任务(单任务/多任务及其下游)

  1. 按照完整依赖设置获取回溯实例:
    1. 按照依赖设置,将依赖上游回溯实例的实例,作为本任务的回溯实例。
    2. 由于受任务自依赖影响,回溯实例会一直获取到最新业务日期对应的实例。
  2. 剔除自依赖后按照获取回溯实例:
    1. 剔除自依赖后,按照依赖设置,将依赖上游回溯实例的实例,作为本任务的回溯实例。
    2. 仅对有回溯权限的下游自依赖任务生效,需要审批的下游,为保证数据质量,仍然按照依赖设置获取回溯实例,由下游自己决定,是否参与此次回溯。

指定回溯队列

您可依据实际业务状况,选取回溯生成的实例,决定是否使用其他特定的队列、计算组来执行,使之与日常生成的调度实例在队列上有所区分,且不会对正常的队列任务执行造成影响。

  • 是:需在下方指定队列中,指定回溯特定的队列、计算组。
  • 否:不指定,默认使用和日常调度实例一致的队列、计算组。

注意

  • 通用任务类型(Shell、Python)、Notebook、EMR Doris、EMR StarRocks、EMR Serverless StarRocks SQL、ByteHouse CE SQL 等不支持指定队列的任务类型,无需指定回溯队列。
  • 回溯范围选择多任务类型,且任务中包含 Shell、Python、EMR Doris、EMR StarRocks 任务类型时,指定回溯队列入口不展示,此场景不支持指定回溯队列信息。

指定队列

指定回溯队列选择“是”时,需要指定回溯特定的队列信息,您可在末尾的下拉框中,下拉选择已在项目控制台中绑定队列、计算组信息。项目绑定操作详见创建项目

说明

  • 指定队列/计算组生效范围:任务本身支持队列/计算组配置,且任务责任人有指定的队列/计算组权限,否则回溯不生效。
  • 相同引擎实例下的多个任务发起回溯,多个任务仅支持指定同个队列/计算组信息。

提升回溯优先级

选择是否需要开启提升回溯实例的优先级:

  1. 回溯实例默认使用最低优先级,即 D5;
  2. 提升回溯优先级之后,回溯实例的优先级与该任务例行实例保持一致,即调度设置中设置的优先级等级。详见任务基础属性

最大并行

此次回溯中,包含的所有实例,允许同时运行的实例个数,若包含使用动态分区的任务下多个实例重跑,并行度需设置为1。

输入参数

数据回溯时,您可根据实际情况,判断是否需要开启任务输入参数设置:

  1. 若回溯发起任务,有使用输入参数,则您可在此处指定输入参数的内容值;
  2. 目前支持“自定义”和“项目”类型的输入参数,指定具体内容值后,具体生效范围为:
    1. “自定义”类型输入参数:仅对“回溯发起任务”生效。

      注意

      回溯发起任务有在任务开发设定自定义参数时,方可设置该类型参数。

    2. “项目”类型输入参数:对本项目下,使用了该项目参数,且参与此次回溯的全部任务生效。

回溯订阅

复查人

如果项目有设置回溯复查要求时,需选择复查人,复查配置操作详见:项目管理--->复查配置

回溯原因

您可在此输入发起此次任务回溯的原因,方便后续查看回溯历史说明。

说明

如果您需要进一步缩小回溯任务范围或查看具体回溯任务,可选择单击“下一步(查看任务列表)”按钮,进行回溯任务预览;如无需要查看任务列表,便可选择“直接发起”,系统将异步发起回溯,在实例完全生成前,您也可在回溯列表中按需单击“取消审批”,即可取消回溯实例生成,详见3.3 回溯任务列表操作

3.1.2 回溯任务预览

在回溯任务预览界面,您可查看符合上方回溯配置条件的任务列表。

  1. 回溯任务筛选
    当符合条件的回溯任务比较多时,您可以根据以下筛选类型进行回溯任务的查看:回溯权限、任务类型、回溯建议、调度类型、依赖类型、频率、任务层级、任务名称、负责人、所属项目等。
  2. 回溯任务数勾选
    此处展现符合条件的回溯任务列表,勾选具体需要回溯的任务即可。
  3. 任务勾选完成后,单击“下一步”按钮,进入最后回溯计划确认界面。

注意

如果任务数据回溯建议选择的是谨慎回溯时,需进行回溯二次确认,并填写对应的回溯原因。非任务责任人发起回溯时,还需责任人进行审批操作,

3.1.3 回溯计划确认

根据选择的回溯任务,在回溯计划确认时,可统计出具体回溯所产生的实例数量。

  1. 您可以在每个任务所产生的回溯实例数中,单击查看按钮,继续选择需要回溯的业务时间范围。
  2. 或者进入回溯实例高级设置,进行回溯实例的筛选,支持以下两个选择方式:
    1. 只保留符合条件的回溯实例
    2. 剔除符合条件的回溯实例
      继续选择回溯权限、业务时间范围等参数进行实例过滤。
      Image

所有回溯实例确认完成后,单击确认回溯按钮,完成数据回溯的任务创建。

3.2 回溯任务筛选

可通过筛选和搜索,快速查找到指定的回溯任务,具体筛选和搜索项有:

  • 筛选项:发起时间、回溯范围、用户筛选。
  • 搜索项:回溯ID、发起任务ID/名称、下游任务ID/名称、发起人、回溯审批人。
  • 重置:重置按钮可以将筛选项都清除,列表中展现出项目下所有的回溯任务。
  • 快速筛选:勾选我的回溯,即筛选出当前账号作为责任人的回溯。

3.3 回溯任务列表操作

根据回溯任务筛选,展现项目下符合要求的回溯任务列表,在这您可以看到每次发起的回溯ID、发起时间、发起任务ID、回溯的业务时间、发起人、回溯配置、回溯的原因和回溯状态情况。
回溯状态栏中,您可以进行以下操作:

  • 查看回溯详情:
    您可单击回溯 ID 按钮,深入查看此次回溯任务的回溯详情,可查看本次回溯的具体任务列表,及实例运行详情;
  • 取消审批:
    1. 数据回溯发起方式选择为“直接发起”,将异步生成回溯实例;
      Image
    2. 在回溯列表,回溯实例状态为“生成中”时,可单击“取消审批”按钮,弹窗二次“确认”后,将未生成的实例取消,仅运行生成的部分实例。
      Image
  • 终止下游审批:
    发起的回溯列表中,回溯任务待任务责任人审批时,发起人可选择终止下游审批的操作,取消此次回溯。
    Image
  • 终止回溯:
    当回溯的实例生成运行后,您可根据实际业务场景,按需单击终止回溯按钮,将正在运行,或还未运行的回溯实例终止,您可在回溯详情中,查看各实例实际运行状态。其中:
    • 正在运行中的实例,终止回溯后实例状态显示为终止(系统终止)
    • 等待运行的实例,终止回溯后实例状态将显示为终止(过期终止)
      Image
  • 复用:单击操作列下的复用按钮,可基于之前的任务回溯配置,再一次创建数据回溯。
  • 撤销:在待复查回溯列表中,回溯任务需复查时,回溯发起人可单击操作列下的撤销按钮,取消此次回溯操作。
    Image

4 收到的回溯列表

您可以在此查看项目下的所属任务,收到的全部数据回溯记录,并且支持谨慎回溯审批操作。
支持根据发起时间,任务状态进行快速筛选,还支持根据回溯 ID ,发起任务 ID /名称,回溯中包含的下游任务 ID /名称,回溯发起人/审批人进行搜索。

4.1 回溯任务审批场景:

  1. 回溯的任务,在调度设置中选择了谨慎回溯---任务责任人审批方式,操作详见:调度设置
  2. 回溯发起人不是任务责任人,回溯审批仅支持任务责任人操作。

说明

  1. 任务的调度设置中,回溯建议选择为谨慎回溯---任务责任人审批方式,但回溯发起人与任务责任人相同时,无需额外的审批操作,回溯是默认同意状态。
  2. 任务责任人同意回溯时,若需要指定运行时段,则DataLeap产品需要购买DataOps敏捷研发湖仓一体分布式数据自治的服务解决方案。

4.2 谨慎回溯审批操作

谨慎回溯审批人可在收到的回溯列表中,按以下步骤进行回溯审批:

  1. 根据发起人提供的回溯任务 ID,搜索需要审批的谨慎回溯任务;
  2. 单击回溯任务 ID,进入回溯详情界面;
  3. 在回溯任务列表的操作列下,单击同意拒绝按钮,进行审批操作:
    • 同意:支持“同意,且生成回溯实例”、“同意,但不生成回溯实例”两种同意方式选择,在回溯确认窗口中,您也可按需设置回溯实例的最大并行数、指定可调度时段、回溯优先级、及任务所需参数等信息。
    • 拒绝:单击拒绝按钮,结束本次回溯操作。

5 待复查的回溯列表

您可以在此查看该项目需要复查的全部数据回溯记录,复查人员登录时支持复查审批操作。
支持根据发起时间,复查状态进行快速筛选,还支持根据回溯 ID ,发起任务 ID /名称,回溯中包含的下游任务 ID /名称,回溯发起人/复查人进行搜索。

5.1 复查前提条件

项目需要设置回溯复查策略,发起的数据回溯,需要复查人员审批后才会实际进行回溯。回溯复查策略配置详见:项目管理--->复查配置

5.2 复查操作

  • 通过:复查人进入待复查界面,在操作列中单击通过按钮,即可完成审批。
  • 拒绝:复查人进入待复查界面,在操作列中单击拒绝按钮,即可拒绝此次回溯。
  • 撤销:回溯发起人,可进入待复查界面,勾选待复查任务,可单击撤销,取消此次回溯复查。

5.3 查看回溯实例

复查通过后:

  • 前往实例运维界面,通过实例筛选搜索方式,搜索回溯的实例。
  • 或者在数据回溯发起界面,回溯列表的状态栏中单击查看详情,进入回溯的多任务列表中,再单击具体任务状态栏中的查看详情,进入运行详情窗口,单击实例操作入口,进入实例运维界面定位查看具体的回溯任务运行进展。

Image