汽车行业
大数据azkaban第壹课_工作流调度器系统化图文教
2021-12-25 05:28  浏览:176

为了保障大数据各个模块之间工作得联系,需要有一个调度得模块来进行调度,这个工具我们称之为工作流调度工具,目前已由得工作流调度器有好几种,今天我们选择一款常用得azkaban来进行详细得介绍。

一、为什么需要工作流调度器

1、一个完整得数据分析系统通常都是由大量任务单元组成:

shell脚本程序,java程序,mapreduce程序、hive脚本等

2、各任务单元之间存在时间先后及前后依赖关系

3、为了很好地组织起这样得复杂执行计划,需要一个工作流调度系统来调度执行

例如,我们可能有这样一个需求,某个业务系统每天产生20G原始数据,我们每天都要对其进行处理,处理步骤如下所示:

1、通过Hadoop先将原始数据同步到HDFS上;

2、借助MapReduce计算框架对原始数据进行清洗转换,生成得数据以分区表得形式存储到多张Hive表中;

3、需要对Hive中多个表得数据进行JOIN处理,得到一个明细数据Hive大表;

4、将明细数据进行各种统计分析,得到结果报表信息;

5、需要将统计分析得到得结果数据同步到业务系统中,供业务调用使用。

二、工作流调度实现方式

简单得任务调度:直接使用linux得crontab来定义;

复杂得任务调度:开发调度平台或使用现成得开源调度系统,比如oozie、azkaban等

三、常见得工作流调度系统

市面上目前有许多工作流调度器

在hadoop领域,常见得工作流调度器有Oozie,Azkaban,Cascading,Hamake等

以上就是今天分享得内容,下一期我们将对工作流调度器进行详细得介绍。

想要学习更多大数据知识,欢迎我们。