最新历史版本 :补数据示例 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

注:本文适用于 4.1.2 及之后版本。

1.1 应用场景

用户设计的定时任务取数逻辑为:每天抽取当天调度时间往前推 24h 内的数据,汇集到目标数据库。

节假日期间 3 天,系统宕机,定时任务没有运行,导致目标数据库缺少 3 天的数据。

1.2 实现方案

使用 重试任务 功能,补齐缺失数据。

本文方案适用于「增量同步-使用时间戳」场景,即需要满足下面两个条件:

  • 数据只存在新增,且每次抽取的数据不重叠,比如取出当天、当月、前一天、上月数据等。

  • 定时任务取数时用到 ${cyctime},或基于 ${cyctime} 延伸出来的 自定义时间变量(任务参数、全局参数里定义的时间类型参数)。

2. 操作步骤编辑

2.1 场景模拟

2.2.1 任务设置说明

定时任务每天晚上执行,将到货日期为当天的数据写入到目标表中。如下图所示:

3.png

2.2.2 场景说明

2024-07-23 日发现,因业务库异常,导致目标表中缺少 2024-07-21、2024-07-22 两天的数据。如下图所示:

2.png

2.2 执行补数据操作

业务库修复完成后,可使用「重试任务」功能将 2024-07-21、2024-07-22 两天的数据抽取到目标数据库。

1)在「任务运维>运行记录」中,找到该任务的历史运行记录。点击「重试」按钮,如下图所示:6.png

2)本文示例中,定时任务只包含「数据同步」这一个节点,选择「指定范围重试>重试节点」,如下图所示:

注:用户根据实际情况选择重试范围。

7.png

3)指定业务日期中选择 2024-07-22 的日期(由于参数的格式为 yyyy-mm-dd,所以无需考虑时分秒,时分秒任意设置即可),先补齐 2024-07-22 的数据。如下图所示:

注1:进行重试时,用户可以对本次重试时的参数进行临时配置,配置结果只影响本次重试运行、不修改实际任务配置。

注2:A 任务依赖 B 任务,对当前 B 任务设置了「指定业务日期」,会触发 A 任务,A 任务会被触发但是执行的时间是当前时间非指定业务日期」。

8.png

4)运行成功后,可看到 2024-07-22 的数据已抽取到目标表中。如下图所示:

9.png

可在「任务运维>运行记录」中,看到重试的运行记录。如下图所示:

10.png

5)重复上述步骤,将指定业务日期」设置为 2024-07-21 ,补齐 2024-07-21 的数据。最终效果如下图所示:

11.png