蛇姐镇楼

Azkaban:
重心则在工作流调度,通过DSL语法定义工作流,同时支持子工作流,子工作流可以在主工作流中调度,也可单独调度。
Airflow:
基于Dag也可以定义复杂的工作流,属于Python技术栈。 总体来说,如果是简单的定时任务调度,可以选择Xxl-Job,与主流Java框架Spring结合很好,上手简单快捷,功能够用;如果调度任务有明确的workflow,需要对workflow状态进行监控分析,则提议使用Azkaban,之所以不选择Airflow,是由于它的管理界面的确 太不好用了。
Azkaban:Command、HadoopShell、Java、HadoopJava、Pig、Hive等,支持插件式扩展
而且扩展插件没有社区
azkaban的组件都是它自己的,没有嵌入到代码里面的组件,有个人的估计,就是个人开发那种
Airflow:Python、Bash、HTTP、Mysql等,支持Operator的自定义扩展。
python是脚本语言
一个是语法
一个是web框架
别的也就是数据库操作吧
flask和ternado是web框架
DolphinScheduler:
- 以DAG图的方式将Task按照任务的依赖关系关联起来,可实时可视化监控任务的运行状态
- 支持丰富的任务类型:Shell、MR、Spark、Flink、SQL(mysql、postgresql、hive、sparksql)、Python、Http、Sub_Process、Procedure等
- 支持工作流定时调度、依赖调度、手动调度、手动暂停/停止/恢复,同时支持失败重试/告警、从指定节点恢复失败、Kill任务等操作
- 支持工作流优先级、任务优先级及任务的故障转移及任务超时告警/失败
- 支持工作流全局参数及节点自定义参数设置
- 支持资源文件的在线上传/下载,管理等,支持在线文件创建、编辑
- 支持任务日志在线查看及滚动、在线下载日志等
- 实现集群HA,通过Zookeeper实现Master集群和Worker集群去中心化
- 支持对Master/Worker cpu load,memory,cpu在线查看
- 支持工作流运行历史树形/甘特图展示、支持任务状态统计、流程状态统计
- 支持补数
- 支持多租户
- 支持国际化