主流大数据调度工具对比DolphinScheduler Azkaban Airflow Oozie Xxl-job

大数据环境下,调度工具比不可少,离线批任务和准实时任务都需要调度去驱动。下文介绍主流大数据调度工具对比DolphinScheduler Azkaban Airflow Oozie Xxl-job

 

  Xxl-job DolphinScheduler Azkaban Airflow Oozie
定位 一个轻量级分布式的任务调度框架 解决数据处理流程中错综复杂的依赖关系 为了解决Hadoop的任务依赖关系问题 通用的批量数据处理 管理Hdoop作业(job)的工作流程调度管理系统
任务类型支持 Java 支持传统的shell任务,同时支持大数据平台任务调度:MR、Spark、SQL(mysql、postgresql、hive/sparksql)、python、procedure、sub_process Command、HadoopShell、Java、HadoopJava、Pig、Hive等,支持插件式扩展 Python、Bash、HTTP、Mysql等,支持Operator的自定义扩展。 统一调度hadoop系统中常见的mr任务启动、Java MR、Streaming MR、Pig、Hive、Sqoop、Spark、Shell等
可视化流程定义 无,可配置任务级联触发
所有流定时操作都是可视化的,通过拖拽来绘制DAG,配置数据源及资源,同时对于第三方系统,提供api方式的操作。

通过自定义DSL绘制DAG并打包上传

通过python代码来绘制DAG,使用不便

配置相关的调度任务复杂,依赖关系、时间触发、事件触发使用xml语言进行表达

任务监控支持 任务状态、任务类型、重试次数、任务运行机器、可视化变量等关键信息一目了然 只能看到任务状态 不能直观区分任务类型 任务状态、任务类型、任务运行机器、创建时间、启动时间、完成时间等。
自定义任务类型支持
需要java先开发具体执行器
暂停/恢复/补数 支持暂停、恢复操作 支持暂停、恢复 补数操作
只能先将工作流杀死在重新运行

只能先将工作流杀死在重新运行
支持启动/停止/暂停/恢复/重新运行:
Oozie支持Web,RestApi,Java API操作
高可用支持 支持HA
调度中心HA和执行器HA
支持HA
去中心化的多Master和多Worker
通过DB支持HA
-但Web Server存在单点故障风险
通过DB支持HA
-但Scheduler存在单点故障风险
通过DB支持HA
多租户支持 支持
dolphinscheduler上的用户可以通过租户和hadoop用户实现多对一或一对一的映射关系,这对大数据作业的调度是非常重要。
过载处理能力 任务队列机制,轮询 任务队列机制,单个机器上可调度的任务数量可以灵活配置,当任务过多时会缓存在任务队列中,不会操作机器卡死 任务太多时会卡死服务器 任务太多时会卡死服务器 调度任务时可能出现死锁
集群扩展支持
新注册执行器即可

调度器使用分布式调度,整体的调度能力会随集群的规模线性正常,Master和Worker支持动态上下线

-只Executor水平扩展

-只Executor水平扩展

 

非常推荐Apache DolphinScheduler

        —— 调度选的好,下班回家早;调度选的对,半夜安心睡;

Apache DolphinScheduler是一个分布式去中心化,易扩展的可视化DAG工作流任务调度系统。致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开箱即用,目前已累计有 **400+** 公司在生产上使用。

特点

**高可靠性**

去**中心化**的多Master和多Worker, 自身支持HA功能, 采用任务队列来避免过载,不会造成机器卡死

**简单易用**

**DAG** 监控界面,所有流程定义都是可视化,通过拖拽任务定制DAG,通过API方式与第三方系统对接, 一键部署

**丰富的使用场景**

支持暂停恢复操作. 支持多租户,更好的应对大数据的使用场景. 支持更多的任务类型,如 spark, hive, mr, python, sub_process, shell

**高扩展性**

支持自定义任务类型,调度器使用分布式调度,调度能力随集群线性增长,Master和Worker支持动态上下线

主要能力

**Task以DAG形式关联,实时监控任务的状态。**

**支持Shell、MR、Spark、SQL、依赖等10多种任务类型。**

**工作流优先级、任务优先级,全局参数及局部自定义参数**

**工作流可定时、依赖、手动、暂停/停止/恢复**

**支持补数、多租户、日志在线查看及资源在线管理**

**完善的系统服务监控,任务超时告警/失败。**

**去中心化设计确保系统的稳定、高可用。**

**支持每日十万数据量级任务稳定运行**

 

社区非常Nice,值得拥有!!!

 


微信扫码关注

及时收看更多精彩内容

主流大数据调度工具对比DolphinScheduler Azkaban Airflow Oozie Xxl-job

上一篇:apache启动错误 AH00072


下一篇:Airflow v2.0 分布式部署 elasticsearch日志解决方案