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

 

 Xxl-jobDolphinSchedulerAzkabanAirflowOozie
定位一个轻量级分布式的任务调度框架解决数据处理流程中错综复杂的依赖关系为了解决Hadoop的任务依赖关系问题通用的批量数据处理管理Hdoop作业(job)的工作流程调度管理系统
任务类型支持Java支持传统的shell任务,同时支持大数据平台任务调度:MR、Spark、SQL(mysql、postgresql、hive/sparksql)、python、procedure、sub_processCommand、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,值得拥有!!!

 


微信扫码关注

及时收看更多精彩内容

在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐