[调度]azkaban~hadoop工作流引擎

Hadoop – Azkaban 作业调度 – 哥不是小萝莉 – 博客园
http://www.cnblogs.com/smartloli/p/5191155.html
在调度 Hadoop 的相关作业时,有以下几种方式:

基于 Linux 系统级别的 Crontab。
Java 应用级别的 Quartz。
第三方的调度系统。
自行开发 Hadoop 应用调度系统。
  对于前两种,使用 Crontab 和 Quartz 是基本可以满足业务需求,但有其弊端。在 Job 数量庞大的情况下,Crontab 脚本的编写,变得异常复杂。其调度的过程也不能透明化,让管理变得困难。Quartz 虽然不用编写脚本,实现对应的调度 API 即可,然其调度过程不透明,不涵盖 Job 运行详情。需自行开发其功能。

因而,第三方的调度系统便应运而生了。在《Hadoop – 任务调度系统比较》一文中,介绍第三方调度系统之间的差异。

Hadoop – 任务调度系统比较 – 哥不是小萝莉 – 博客园
http://www.cnblogs.com/smartloli/p/4964741.html
1.概述
  在Hadoop应用,随着业务指标的迭代,而使其日趋复杂化的时候,管理Hadoop的相关应用会变成一件头疼的事情,如:作业的依赖调度,任务的运行情况的监控,异常问题的排查等,这些问题会是的我们日常的工作变得复杂。那么,在没有条件和精力去开发一套调度系统的情况下,我们去选择一款第三方开源的调度系统,来尽量减轻和降低我们日常工作的复杂度,也是极好的。

2.1 Oozie
  Oozie目前是托管在Apache基金会的,开源。

2.2 Zeus
  它是一个Hadoop的作业平台,从Hadoop任务的调试运行到生产任务的周期调度,它支持任务的整个生命周期。

2.3 Azkaban
  这是由LinkedIn创建的一个批处理工作流,用于跑Hadoop的Jobs。Azkaban提供了一个易于使用的用户界面来维护和跟踪你的工作流程。

工作流调度器Azkaban学习,工作流调度azkaban_云计算 | 帮客之家
http://www.bkjia.com/yjs/946863.html
1、Azkaban是什么
我们在工作中应该都遇到过这样的场景:有一个任务,这个任务可以划分成多个较小的任务完成,之所以进行划分是因为小任务之间可以并发的进行,例如是一个shell脚本执行的命令吧,大任务A可以划分成B、C、D、E四个子任务(脚本)完成,而B和C是可以同时进行的,D依赖B和C的输出,E又依赖D的输出,于是我们一般的做法可能就是开两个终端同时执行B和C,等两个都执行完成之后再执行D,接着在执行E。整个执行的过程都需要我们参与,但是整个的执行过程类似一个有向无环图,每一个子任务的执行可以看作整个任务的一个流,我们可以同时从没有入度的节点开始执行,任何没有流向(两个节点之间没有通路)关系节点都可以并行得执行,人为的控制难免就有点力不从心了(因为很多任务都需要在深夜执行,一般我们都是写脚本并设置cron),这时候我们需要的就是一个工作流调度器。 Azkaban就是完成这种任务的(其实主要还是用于对hadoop生态圈的任务的支持),它是由Linkedin实现并开源的,主要用于在一个工作流内以一个特定的顺序运行一组工作和流程,它的配置是通过简单的key:value对的方式,通过配置中的dependencies来设置依赖关系,这个依赖关系必须是无环的,否则会被视为无效的工作流。

hadoop 集群调度 Azkaban2搭建 – bbaiggey_bigdata的博客 – 博客频道 – CSDN.NET
http://blog.csdn.net/bbaiggey/article/details/50775568
Azkaban是由Linkedin开源的一个批量工作流任务调度器。用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban定义了一种KV文件格式来建立任务之间的依赖关系,并提供一个易于使用的web用户界面维护和跟踪你的工作流。
它有如下功能特点:
Web用户界面
方便上传工作流
方便设置任务之间的关系
调度工作流
认证/授权(权限的工作)
能够杀死并重新启动工作流
模块化和可插拔的插件机制

hadoop工作流引擎之azkaban [转] – 风浪 – 博客园
http://www.cnblogs.com/whtydn/p/4353695.html
介绍

Azkaban是twitter出的一个任务调度系统,【操作比Oozie要简单】很多而且非常直观,提供的功能比较简单。Azkaban以Flow为执行单元进行定时调度,Flow就是预定义好的由一个或多个可存在依赖关系的Job组成的工作流。Azkaban的官方主页是http://azkaban.github.io/azkaban2/ ,它的的主要特点有下面几个:

兼容所有Hadoop版本(1.x,2.x,CDH)
可以通过WebUI进行管理配置,操作方便
可以通过UI配置定时调度
扩展性好,可针对某一问题开发组件(目前有三个插件HDFSBrowser,JobtypePlugins和HadoopSecurityManager)
有权限管理模块
可以通过WebUI跟踪Flow或者Job的执行情况
可以设置邮件提醒
可以为定时Flow或者Flow中的某个Job配置执行时间长度的控制,如果执行时间超过了所设的时间,可以发送警告邮件给相关人员或者Kill掉相应设置的Flow或Job
可以重试失败Job

针对 Hadoop 的 Oozie 工作流管理引擎的实际应用
http://www.ibm.com/developerworks/cn/data/library/bd-hadoopoozie/
Apache Oozie 是 Apache Hadoop 生态系统中的一个关键组件,它使得开发人员能够调度电子邮件通知方面的重复作业,或者调度使用 Java™、UNIX Shell、Apache Hive、Apache Pig 和 Apache Sqoop 等各种编程语言编写的重复作业。

    原文作者:葡萄喃喃呓语
    原文地址: https://www.jianshu.com/p/b6d790bb5553
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞