azkaban调度器的安装及配置
安装前首先 了解一下azkaban
工作调度器:azkaban
工作流调度系统产生的背景:一个完整的数据分析系统都是由大量的任务单元组成 如:shell 脚本程序 /java程序 /mapreduce 程序/hive脚本程序等 并且各个任务单元之间存在时间先后依赖关系,为了更好的执行复杂计划 需要有一个工作流调度系统来调度执行。
简单的任务调度:
直接使用 linux 的 crontab 来定义,但是缺点也是比较明显,无法设置依赖。
复杂的任务调度:
自主开发调度平台
使用开源调度系统,比如 azkaban、ooize、Zeus 等
其中知名度比较高的是apache ooize,但是其配置工作流的过程是编写大量的xml,而且代码复杂度比较高,不易于二次开发。
了解一下azkaban:
Azkaban 是由 Linkedin 公司推出的一个批量工作流任务调度器,用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban 使用 job 配置文件建立任务之间的依赖关系,并提供一个易于使用的 web 用户界面维护和跟踪你的工作流。
例如,我们可能有这样一个需求,某个业务系统每天产生20G原始数据,我们每天都要对其进行处理,处理步骤如下所示:
1、 通过Hadoop先将原始数据同步到HDFS上;
2、 借助MapRed