INFO-中台调度模式说明

功能说明
离线开发 调度任务
使用示例

1.

目前中台提供的 Azkaban 调度系统支持串行、并行定时调度模式,也支持手动重跑及补数据调度模式;

串行调度:
串行任务调度按照用户配置执行计划,且该任务所有实例均已结束后,启动任务实例,然后判断依赖条件是否开始执行任务;

并行调度:
并行调度任务按照用户配置执行计划,定时启动任务实例,然后判断依赖条件是否开始执行任务;

重跑:
任务重跑为按照该任务实例信息重新调度一遍,不允许用户修改任何信息;

补数据:
根据任务血缘关系,可由用户自定义选择该任务及下溯血缘任务同周期补数据;补数据同样需满足任务串行或并行调度条件;

2.

假设存在 AB 两个任务,A 依赖 B 任务,分别线上调度2018-10-012018-10-02两个周期:

Case1A B 任务均为并行调度,当且仅当 B 任务调度失败时,同周期 A 任务会受影响处于就绪状态,即:当调度2018-10-01周期数据时,当 B 任务失败时,A 任务会受 B 任务影响处于就绪状态;第二次调度2018-10-02周期数据时,若 B 调度成功,则 A 任务同样可正常调度2018-10-02周期任务;

Case2A B 任务均为串行任务,当 B 任务调度失败时,A 任务将处于就绪状态,且后续周期任务实例不会创建,直至处于就绪状态任务被终止或执行成功;B 任务后续周期任务可正常生成实例进行调度,即:当调度2018-10-01周期数据时,当 B 任务失败时,A 任务会受 B 任务影响处于就绪状态;第二次调度2018-10-02周期数据时,B 任务可生成实例正常调度,但 A 任务因2018-10-01周期实例处于就绪状态,不会生成实例,不会再调度;解决方案为:进入任务运维--实例运维中找到对应的实例 ID,选择对应就绪状态任务点击右上角停止即可;

Case3A 为串行任务,B 为并行任务,任务调度情况等同 Case2

Case4A 为并行任务,B 为串行任务,任务调度情况等同 Case1

作者:qianzhaoyuan