全部文档
文档中心数据流功能数据流的执行&周期任务

数据流的执行&周期任务

数据流执行的本质是系统根据”最新发布”的数据流版本配置,按次序依次执行配置中的各个节点,完成相关的数据任务。 触发数据流执行的方式有3种,分别是:手动执行、周期任务、接口调用。

用户保存并发布了一个数据流以后,可以点击右上角的【更多】按钮,在下拉菜单中点击【执行】即可手动执行当前数据流。 「注意:此时执行的数据流是**”最新发布”版本的数据流配置**,和当前画布中的配置可能不一致!」

除了手动执行数据流以外,用户还可以自定义时间规则让数据流周期性地自动执行。 点击右上角的【更多】按钮,在下拉菜单中点击【周期任务】即可打开周期任务的配置弹窗:

打开周期任务的配置弹窗,并选择一个希望任务执行的时间,点击确认即可: 「注:定时任务就是一个不重复的周期任务!」

用户选择了一个数据流定时执行的时间后,如果希望这个数据流每天都在这个时间点运行一次,只需要将**[重复周期]**的配置项选择为”每天”即可。

用户选择了一个数据流定时执行的时间后,如果希望这个数据流每周都在这个时间点运行一次,只需要将**[重复周期]**的配置项选择为”每周/月”即可。 上图中”2023-03-31”是周五,因此后续的周期执行的逻辑是”每周五上午9点”执行一次当前数据流。 同理,如果[重复周期]是”每月”的话,就是”每月31号上午9点”执行一次当前数据流。 「注:如果出现月份不足,即4月没有31号时,会在4月的最后一天,即30号上午9点执行一次。」 其他周期亦是如此,包括年份不一致的大小年。

用户选择了一个数据流定时执行的时间后,如果希望这个数据流每2周或每3周都在这个时间点运行一次,则需要将**[重复周期]**的配置项选择为”自定义”,并在其附属选项中填写2/3,选择单位为”周”。

用户配置周期任务时,还可以选择周期任务的终止方式:指定重复次数/自定义终止时间。 指定重复次数表示当前周期任务的最大执行次数; 自定义终止时间表示当前周期任务在终止时间后不再重复。

在实际的业务配置中,当用户配置好了数据流后,希望他能立刻执行,完成基础数据迁移,并从明天开始,每天0点执行一次,同步增量数据。 此时,我们需要使用[重复执行时间]这个配置项。 如果当前时间为2023年02月26日22:30:00,我们需要完成上述配置,则如图所示: 其中,[执行时间]表示这个周期任务第一次执行的时间,当我们在[重复执行时间]中开启了”自定义重复时间”后,会从[重复时间]开始进行重复周期。 按上述配置即可完成类似场景的配置,以下是具体配置逻辑,主要用于帮助理解,可不看:

[重复执行时间]共有2个配置项,分别是”同于首次执行时间”和”自定义重复时间”。 “同于首次执行时间”表示按首次执行时间重复周期来计算后续任务的执行时间。 例如: [执行时间]的值为”2022-10-31 09:10:11”,且[重复周期]选择了”每天”: 则表示在2022-10-31以后的每天早上09:10:11执行当前数据流; [执行时间]的值为”2022-10-31 09:10:11”,且[重复周期]选择了”每周”: 则表示在2022-10-31以后每周同一日(每周周一)的早上09:10:11执行当前数据流; [执行时间]的值为”2022-10-31 09:10:11”,且[重复周期]选择了”每月”: 则表示在2022-10-31以后每月的31日早上09:10:11执行当前数据流; [执行时间]的值为”2022-10-31 09:10:11”,且[重复周期]选择了”每季度”: 则表示在2022-10-31以后每季度同一日(每季度的第31天)的早上09:10:11执行当前数据流; [执行时间]的值为”2022-10-31 09:10:11”,且[重复周期]选择了”每年”: 则表示在2022-10-31以后每年的10月31日早上09:10:11执行当前数据流。 【PS:在每季度、每月、每年的重复周期中,如果出现了期间时间差异,例如Q3的时间比Q1长、1月的时间比2月长、闰年比普通年长等,也就是说,如果两个时间点之间的时间间隔小于设定的周期间隔(每月30天、每周7天等),则按当期的最后一天来进行执行,即9月30日开始的每季度执行,其第三次会在来年的3月30日执行;1月31日开始的每月执行,其第二次会在2月最后一天执行;闰年12月31日开始的每年执行,其第二次会在次年的最后一天执行。】 “自定义重复时间”是用于重新配置后续任务每次执行的时间点的配置项,其本质就是周期任务首次执行当前数据流后,第二次执行该数据流的时间点。 “自定义重复时间”的逻辑与”同于首次执行时间”一样,只是”自定义重复时间”与[重复周期]的配合要落后一个时间节拍。

未完待续……

回到顶部

咨询热线

400-821-9199

我们使用 ChatGPT,基于文档中心的内容以及对话上下文回答您的问题。

ctrl+Enter to send