大数据全系列 教程
1869个小节阅读:467.7k
目录
408考研
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
大数据业务处理场景中,经常有这样的分析场景:
tb_a
中。tb_b
和表tb_c
进行关联得到表tb_d
。tb_a
与B任务中得到的表tb_d
进行关联得到分析的结果表tb_e
。tb_e
通过sqoop导入到关系型数据库MySQL中供web端查询使用。显然,以上任务C依赖于任务A与任务B的结果,任务D依赖于任务C的结果。我们一般的做法可以打开两个终端分别执行任务A与任务B,当任务A与任务B执行完成之后再执行任务C,当任务C执行完成之后再执行任务D。整个任务流程中必须保证任务A、任务B执行完成之后执行任务C,然后再执行任务D。这样某一个环节都离不开人工的参与,需要时刻盯着各任务的执行进度,非常费力。
以上业务场景就是一个大的任务,任务中分为四个子任务A、B、C、D,如果能有一个任务调度器给我们自动实现执行任务A,执行任务B,然后再执行任务C,最后执行任务D,那么就不需要人工时刻盯着任务是否执行完成,是否该开启下一个任务。Azkaban就是这样一个工作流的调度器,可以解决以上场景问题。
为什么需要工作流调度系统
一个完整的数据分析系统通常都是由大量任务单元组成:
Shell 脚本程序,MapReduce 程序、Spark程序,Hive 脚本等
各任务单元之间存在时间先后及前后依赖关系
为了很好地组织起这样的复杂执行计划,需要一个工作流调度系统来调度执行
实时效果反馈
1. 关于为什么需要工作流调度系统的描述,正确的是:
A 一个完整的数据分析系统通常都是由大量任务单元组成:Shell 脚本程序,
MapReduce 程序、Spark程序,Hive 脚本等。
B 各任务单元之间存在时间先后及前后依赖关系。
C 为了很好地组织起这样的复杂执行计划,需要一个工作流调度系统来调度执行。
D 以上三个选项都正确。
答案:
1=>D