介绍及对比其他调度框架
什么是工作流?
- 很多个程序,完成一个具体的任务
- 任务流/工作流
什么是调度?
- 将任务流中的每个程序按照
顺序和规则运行,就是调度
用于实现整个大数据平台中所有任务的自动化运行

举例 - job1、job2、job3是数据采集程序,只要过了00:00,昨天的数据就全部生成了 ,程序就可以启动进行采集
- 定时调度
- 而且job1、job2、job3之间没有关系,可以并行运行
- job4、job5、job6是ETL的程序
- job4必须的等待job1/job2/job3都完成了,才能执行
- job5必须等待job4完成了才能运行
- job6必须等待job5完成了才能完成
- job6完成了,整个ETL才结束
- job7、job8、job9是数据分析程序
- 都必须等待job6完成了才能对ETL以后的数据做分析
- 这三个彼此之间没有关联,可以并行运行
- job10:导出分析结果的程序
- 必须等待所有的分析的结果都产生了,才能执行
- 必须等待job7/job8/job9都完成了,才能执行
调度类型
- 时间调度:基于某种时间条件运行程序
只有工作流中的第一层的程序需要定时调度 - 依赖调度:基于某种依赖关系运行程序
后面的每一层都是依赖调度
简单的调度
基于时间的任务调度系统:Linux Crontab
可以基于时间实现定时调度
- 指定时间运行某个Linux命令
- 操作
crontab -e:编辑定时任务
crontabl -l:查看当前的定时任务
crontab -r:清空当前所有的定时任务
crontab -u u

本文详细介绍了工作流和调度的概念,对比了Linux CronTab的时间调度与YARN、Azkaban的依赖调度。重点讲述了Azkaban的功能、分布式架构以及与Oozie和Zeus的优缺点。关键词包括:工作流、调度、Linux CronTab、YARN、Azkaban、Oozie、Zeus。
最低0.47元/天 解锁文章
1581

被折叠的 条评论
为什么被折叠?



