调度设置分为基本信息、调度属性、依赖关系和输入输出参数四部分。下文对各部分进行介绍,不同任务类型,配置项存在不同,以实际页面为准。
基本信息

任务名称:调度设置中不支持修改,可以在左侧目录树中选中任务,通过“操作热区-重命名”进行修改。
任务描述:非必填,可对任务进行详细描述,方便后续查看和管理。
责任人:默认为任务创建人,可根据实际需要,修改为其他项目成员。
- 责任人必须从项目成员中选取
- 项目中具有编辑权限的角色,可对项目下的所有任务进行编辑,因此无须通过为任务设置多个责任人,来达到协同合作的效果。
是否使用项目模板:目前仅HSQL任务有该设置,通过项目模版,可批量设置HSQL任务的队列、优先级别和执行参数。项目模版的具体设置入口如下

yarn队列:从项目已配置的队列中进行选择
优先级别:任务提交到调度系统的优先级,目前分为普通、高优和超高优。
调度属性

- 调度状态:分为开启和关闭
- 开启,调度开启的任务会被调度执行
- 关闭,调度关闭的任务不会被调度执行
- 任务首次上线后,调度状态为开启
- 调度类型:
- 周期调度:根据设定的频率和执行时间,系统自动生成实例,并定时运行;
- 手动调度:系统不会自动调度,需手动发起数据回溯,才会生成实例并运行。操作入口为“运维中心-离线任务运维-上线任务-数据回溯”;
- 调度生效日期:当调度类型选择“周期调度”时,可对调度的生效时间范围进行设置,默认值为1970-01-01 00:00:00~9999-12-31 23:59:59,可根据实际需要进行调整。
- 执行频率
- 执行时间:根据所选执行频率进行设置。
- 分钟级:执行时间需要设置时间间隔和执行时刻;
- 小时级:执行时间需要设置执行小时和执行时刻,执行小时支持多选,例如:一天每个小时都要执行,则执行小时点击全选按钮,选择0至23小时;
- 天级:执行时间需要设置具体的时间;
- 周级:执行日期需要设置每周几来执行,支持多选;
- 月级:执行日期需要设置每月几号执行,支持多选;
- 分钟、小时级别的任务,可进行分时设置

1) 分时调度:当执行频率选择分钟级或者小时级时,出现分时调度属性。设定分时调度的调度时段后,非指定时间范围内的实例,会积压到该时段提交运行,可缓解非指定时段的执行压力。
2) 分时队列:当执行频率选择小时级时,出现分时队列属性。不同业务时间对应的实例,可执行不同的yarn队列,充分利用队列资源。
- 最早回溯时间:可重跑的历史数据的最早时间,设定后,最早回溯时间之前的实例将无法生成。
- 空跑设置:启用空跑设置后,实例不真正执行,直接置为成功。
- 重试触发条件:系统提供两种重试触发条件,“失败重试”和“超时重试”,默认选中失败重试(不可更改),用户可根据实际需要,选择是否启用超时重试。
- 失败重试:任务运行失败,若有剩余重试次数,则自动进行重试;
- 超时重试:任务运行耗时超过设定阀值,若有剩余重试次数,则自动进行重试。
- 失败重跑次数:任务失败后,重试的次数。另外,当实例重试运行时间超过48小时,系统将自动结束该实例。
- 重跑时间间隔:任务失败后,重试的时间间隔。
- 最大并发控制:当前任务可同时运行的实例个数。
- 数据回溯建议:允许回溯和谨慎回溯
- 默认使用“允许回溯”,即该任务允许回溯,无需审批;
- 当任务回溯有风险时,可启用谨慎回溯,此时用户可根据需要,回溯时选择引入二次弹窗提醒或需要由任务责任人进行审批确认。
依赖关系

任务依赖设置,即数据依赖。当上游任务执行成功,即代表数据表(分区)数据已就绪。
在设置依赖关系时,可使用依赖推荐或手动添加的方式,如果该任务依赖本身上一周期的产出,可使用任务自依赖设置。
- 任务上游依赖设置
通过“上游依赖设置”,建立任务之间的依赖关系:
- 依赖推荐:解析SQL代码,获取任务的使用表信息,系统将更新使用表的任务,作为推荐项返回给用户,用户可根据实际需要进行勾选;
- 手动添加:通过手动方式添加上游任务,用户可根据任务、表信息,搜索对应任务,将其添加为上游;
- 依赖设置:添加依赖任务之后,需要进行偏移设置,以此形成精确的数据血缘信息,具体配置详见3.1.15章节的“任务上游依赖偏移设置”;
- 依赖预览:依赖设置完成后,可通过“依赖预览”,查看按照当前的依赖设置,上下游任务最新业务日期的实例依赖关系,方便及时验证偏移设置是否符合预期;
- 删除:删除已设置的上游依赖。
- 任务自依赖设置
跨周期自依赖:若任务需要依赖自己上一周期的数据产出,则跨周期自依赖设置为“是”即可。例如当天任务的执行,依赖昨天的运行结果,跨周期自依赖可选择“是”
输入输出参数
通过任务的输入输出参数,可支持任务使用自定义参数,该参数可来源于上游任务,任务所在项目或是自定义内容值。输入输出参数的使用,详见“任务输入输出参数设置”

任务输入参数:任务设置输入参数后,可在任务内部使用,具体使用方式为{{参数名}}
添加:点击后添加输入参数,输入参数来源可分为三类:
任务:通过上游任务,将上游任务的任务、实例信息,作为输入参数;
项目:引用项目参数作为任务的输入参数,参数值在项目参数中设置;
自定义:仅在当前任务中使用的参数,直接定义参数内容

编辑:编辑输入参数的内容
删除:删除输入参数
任务输出参数:设置任务的输出参数,任务上线后,即可在下游节点中使用,作为下游节点的输入参数的取值,输出参数的取值分为常量和变量两种类型。
- 添加:点击后添加输出参数

- 将运行结果当作输出:对于shell/python/hsql三种类型的任务,允许将实例运行结果并作为结果变量,通过“outputs”进行传递
1) shell/python任务:收集最后一行stdout/err的结果作为输出参数
2) hsql任务:收集最后一行select的输出
3) 编辑:编辑输出参数的内容
4) 删除:删除输出参数