暂无图片
暂无图片
暂无图片
暂无图片
暂无图片
尚硅谷大数据之azkaban.pdf
38
16页
0次
2024-03-23
10墨值下载
尚硅谷大数据技术之 Azkaban
—————————————————————————————
更多 Java 大数据 前端 python 人工智能资料下载,可百度访问:尚硅谷官网
尚硅谷大数据技术之 Azkaban
官网:www.atguigu.com
概述
1.1 为什么需要工作流调度系统
1)一个完整的数据分析系统通常都是由大量任务单元组成
shell 脚本程序,java 程序,mapreduce 程序、hive 脚本等
2)各任务单元之间存在时间先后及前后依赖关系
3)为了很好地组织起这样的复杂执行计划,需要一个工作流调度系统来调度执行;
例如,我们可能有这样一个需求,某个业务系统每天产生 20G 原始数据,我们每天
要对其进行处理,处理步骤如下所示
1) 通过 Hadoop 先将原始数据上传到 HDFS 上(HDFS 的操作);
2) 使用 MapReduce 对原始数据进行清洗(MapReduce 的操作);
3) 将清洗后的数据导入到 hive 表中hive 的导入操作);
4) Hive 中多个表的数据进行 JOIN 处理,得到一 hive 的明细表(创建中间表);
5) 通过对明细表的统计和分析,得到结果报表信息(hive 的查询操作);
为什么需要工作流调度系统
某个业务系统每天
产生20G原始数据,
我们每天都要对其
进行处理
HDFS
MapReduce
Hive
Hive
Join
明细数据
Hive大表
结果报表
1)先将原始数据同步到HDFS
2)进行数据清洗
3生成的数据导入
Hive表中
4)对Hive中多表
数据进行JOIN
5)得到一个明细
数据Hive大表
6)将明细数据进行
复杂的统计分析,得
到结果报表信息
总结:为了很好地组织起这样的复杂执行
划,需要一个工作流调度系统来调度执行
1.2 Azkaban 适用场景
根据以上业务场景: 2)任务依赖1)任务的结果,(3)任务依赖(2)任务的
尚硅谷大数据技术之 Azkaban
—————————————————————————————
更多 Java 大数据 前端 python 人工智能资料下载,可百度访问:尚硅谷官网
,(4任务依赖3任务的结果,5任务依赖4任务的结果。一般的做法是,先
执行完(1再执行(2),再一次执行3)(4)(5)。
这样的话,整个的执行过程都需要人工参加,并且得盯着各任务的进度但是我们的
多任务都是在深更半夜执行的,通过写脚本设置 crontab 执行。其实,整个过程类似于一个
有向无环图DAG每个子任务相当于大任务中的一个节点也就是,我们需要的就是一
个工作流的调度器,而 Azkaban 就是能解决上述问题的一个调度器。
1.3 什么是 azkaban
Azkaban 是由 Linkedin 公司推出的一个批量工作流任务调度器主要用于在一个工作流
内以一个特定的顺序运行一组工作和流程,它的配置是通过简单的 key:value 对的方式,通
过配置中的 dependencies 来设置依赖关系。Azkaban 使用 job 配置文件建立任务之间的依
关系,并提供一个易于使用的 web 用户界面维护和跟踪你的工作流。
1.4 Azkaban 特点
1) 兼容任何版本的 hadoop
2) 易于使用的 Web 用户界面
3) 简单的工作流的上传
4) 方便设置任务之间的关系
5) 调度工作流
6) 模块化和可插拔的插件机制
7) 认证/授权(权限的工)
8) 能够杀死并重新启动工作流
9) 有关失败和成功的电子邮件提醒
1.5 常见工作流调度系统
1)简单的任务调度:直接使用 crontab 实现;
2)复杂的任务调度:开发调度平台或使用现成的开源调度系统,比 ooizeazkaban
1.6 ooize azkaban 特性对比
下面的表格对上述四种 hadoop 工作流调度器的关键特性进行了比较,尽管这些工作流
调度器能够解决的需求场景基本一致但在设计理念,目标用户,应用场景等方面还是存在
显著的区别,在做技术选型的时候,可以提供参考
of 16
10墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜