【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态

数加·大数据开发套件目前支持任务调度周期有五种:天、周、月、分钟、小时。本文将介绍这五种周期的配置和调度形态。

调度规则——调度任务是否能运行起来要满足的条件:

  1. 上游任务实例是否都运行成功。若所有上游任务实例都运行成功则触发任务进入等待时间状态。
  2. 任务实例定时时间是否已经到。任务实例进入等待时间状态后会check本身定时时间是否到,如果时间到了则进入等待资源状态;
  3. 当前调度资源是否充足。任务实例进入等待资源状态后,check当前本项目调度资源是否充足,若充足则可以运行起来。

天调度任务

天调度任务,即每天自动调度运行一次,运行时遵循调度规则。新建调度任务时,调度周期默认就是天调度。

【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态

具体时间默认是00:00:00,可自行指定,当然指定具体时间后依然需要遵循调度规则进行起调,不一定就能在指定的时间马上运行起来。

场景:3个任务——导入、统计加工、导出,都是天任务,具体时间如上图13点;统计加工任务依赖导入任务,导出任务依赖统计加工任务,依赖配置如下图(‘统计加工任务’的依赖属性配置上游任务为‘导入任务’):

【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态

这样的配置自动调度形态如下:

【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态

周调度任务

周调度任务,即每周周N那天会自动调度运行一次,运行时遵循调度规则;没指定的每天也都会生成自动调度实例但是是空跑实例,即调度到的时候直接返回成功状态不会真正执行任何逻辑,也不会占用资源。

【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态

如上图中,每周一、周五两天生成的实例会正常的调度执行,而周二、三、四、六以及周日5天都是生成空跑实例。

注意: 这个任务提交后,想进行调度测试,选择业务日期的时候,只有选择“周日”或“周四”的日期,生成的测试实例可以真正运行的实例,选择其他业务日期生成的实例都是空跑实例。

任务的自动调度形态如下:

【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态

月调度任务

周调度任务,即每月指定的日期那天会自动调度运行一次,运行时遵循调度规则;没指定的日期每天也都会生成自动调度实例但是是空跑实例,即调度到的时候直接返回成功状态不会真正执行任何逻辑,也不会占用资源。

【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态

如上图中,每月1日生成的实例会正常的调度执行,其他日期每天都是生成空跑实例。

注意:

  • 这个任务提交后,想进行调度测试,选择业务日期的时候,只有选择每个月最后一天的日期生成的测试实例才能真正运行,其他业务日期生成的实例都是空跑实例。
  • 目前系统不支持配置“每月最后一天”,调度周期—选择时间若选“每月31日”那么只有那个有31日的月份会有一天真正调度,其他都是空跑。若是需要统计汇总每个月的数据,正常情况就是配置每月一日调度,代码逻辑里写定义处理上个月的数据。

上图的配置,任务自动调度形态如下:

【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态

分钟调度任务

分钟调度任务,即每天指定的时间段内,每隔N(5的倍数)分钟自动调度运行一次,运行时遵循调度规则。

【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态

如上图,表示每天00点整到23点59分这个时间段内,每隔30分钟会自动调度一次。

开始时间、结束时间的“时”可以调整,比如可以调整为每天08点——20点59分,每隔30分钟执行一次。

上图的配置,调度形态如下:

【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态

小时调度任务

小时调度任务,即每天指定的时间段内,每隔N(1的倍数)分钟自动调度运行一次,运行时遵循调度规则。

【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态

如上图,表示每天00点整到23点59分这个时间段内,每隔6小时会自动调度一次。

开始时间、结束时间的“时”可以调整,比如可以调整为每天08点——20点59分,每隔1小时执行一次。

上图的配置,调度形态如下:

【大数据开发套件调度配置实践】——调度任务各种周期配置和调度形态