Apache Dolphin Scheduler
分布式易扩展的可视化DAG工作流任务调度系统。
以DAG的方式将Task组装起来,实时监控任务的运行状态,支持重试、从指定节点恢复失败、暂停和Kill任务等操作。
特性
- 可视化DAG,简单操作、实时查看,支持数万任务运行;
- 调用高可用,流程容错、失败重试、回滚、转移等;
- 丰富的任务类型,跨语言,自定义插件;
- 任务依赖,流程依赖;
- 任务日志/告警机制;
- 补数,数据重刷;
架构
概念
工作组(Worker组):工作流运行时需要选定工作组,
- 可用于对不同的节点进行分类,比如某个节点具备大数据环境,必须运行在该节点上;
环境:绑定在 Worker 组,配置不同的环境变量信息;
调度
分配任务至同一 worker 组的不同机器上,默认提供了三种算法:
- 加权随机(random)
- 平滑轮询(roundrobin)
- 线性负载(lowerweight),默认配置为线性加权负载