在Hadoop应用,随着业务指标的迭代,而使其日趋复杂化的时候,管理Hadoop的相关应用会变成一件头疼的事情,如:做业的依赖调度,任务的运行状况的监控,异常问题的排查等,这些问题会是的咱们平常的工做变得复杂。那么,在没有条件和精力去开发一套调度系统的状况下,咱们去选择一款第三方开源的调度系统,来尽可能减轻和下降咱们平常工做的复杂度,也是极好的。今天,笔者给你们比较几种常见的调度系统,供你们去选择。html
Oozie目前是托管在Apache基金会的,开源。在以前的博客《Oozie调度》一文当中,介绍相关Oozie的调度,如何去调度Hadoop的相关,你们能够从博客的文中所描述的内容看出,配置的过程略显繁琐和复杂,配置相关的调度任务比较麻烦,然其可视化界面也不是那么的直观,另外,对UI界面要求较高的同窗,此调度系统估计会让你失望。如果对改调度系统感兴趣的同窗能够到《Oozie调度》一文中作相关细节的了解。这里就很少作赘述了。数据库
它是一个Hadoop的做业平台,从Hadoop任务的调试运行到生产任务的周期调度,它支持任务的整个生命周期。从其功能来看,它支持如下任务:模块化
其开源地址在Github上面,可在Github搜索Zeus,便可找到相关工程。Zeus是由阿里巴巴开源出来的,文档在Github上描述的也比较详细,其相关安装步骤及使用方法可参考Github上的官方文档,这里就很少作赘述了。oop
这是由LinkedIn建立的一个批处理工做流,用于跑Hadoop的Jobs。Azkaban提供了一个易于使用的用户界面来维护和跟踪你的工做流程。其可视化界面以下所示:学习
另外,Github上贡献的Azkaban调度系统的源码量不大,作二次开发难度不大。其功能点涉及如下内容:插件
Azkaban的设计之初主要是基于可用性的考虑。在LinkedIn运行的有些年头了,一直驱动着它们的Hadoop和数据仓库。设计
它由3个关键部分组成,分别是:调试
三者的关系图,以下所示:日志
关于其相关配置和使用,官方给出的文档比较详细,这里就很少赘述了。你们能够到Github去阅读官方给出的文档。htm
关于调度系统的选择,这里就比较了这3种,你们能够适状况而定,另外,如果条件容许或是有精力也能够参考这些调度系统的原理,开发一套知足本身当前业务的调度系统,也不失为一种选择。
这篇博客就和你们分享到这里,若是你们在研究学习的过程中有什么问题,能够加群进行讨论或发送邮件给我,我会尽我所能为您解答,与君共勉!