Hadoop高级编程之--Oozie
来源:互联网 发布:mysql 删除外键 编辑:程序博客网 时间:2024/06/07 22:46
利用Apache Oozie Workflow引擎,可以解决基于特定时间,特定时间,特定资源的一组MapReduce作业。
Oozie主要由下面4个功能组件构成:
1,Oozie Workflow--该组件用于定义和执行一个特定顺序的MapReduce,Hive和Pig作业。
2,Oozie Coordinator --该组件用于支持事件,系统资源存在性等条件的Workflow的自动执行。
3,Oozie Bundle -- 该引擎可以定义和执行“一束”应用,从而提供一个批量化方法,将一组Coordinator应用程序一起进行管理。
4,Oozie 服务等级协定(Service Level Agreement, SLA) --该组件支持Workflow应用执行过程的记录跟踪。
Oozie Workflow的定义主要基于以下概念:
1,动作(Action)--这是关于一个的Workflow任务/步骤的约定。eg:一个MapReduce的作业,一段代码执行,一个Hive脚步等。
2,转换(Transition)--这是关于一个给定动作完成时,哪个动作可以随后执行的约定。描述一种动作之间的依赖关系的方法。
3,Workflow是一组排列在一张依赖顺序图中的动作和转换集合。
4,Workflow应用程序--这是由Oozie Workflow语言定义的Oozie Workflow。Oozie服务器会对Oozie Workflow应用程序定义进行解释,并保存到Oozie数据库中。
5,Workflow作业--这是Oozie服务器中的一个进程,它解释Oozie Workflow定义。Oozie Workflow任务会控制动作提交的顺序和条件。
Oozie 还支持两种不同类型的动作(Action):
1,同步--该类型的动作在Oozie服务器自己的执行线程中执行。
2,异步--该类型的动作在Hadoop集群中以MapReduce(或Hive/Pig/Sqoop)作业的形式执行。Oozie服务器初始化异步动作的执行,并等待起结束。
Oozie Workflow的转换,有如下两种类型的条件来决定:
1,结构条件--该类转换时在Workflow DAG中静态定义的(转换和fork-join结构)。
2,运行时执行条件--该类型转换可以使用前面动作执行结果,形式包括进程变量(switch-case结构)和成功/失败路径。
控制流节点:
Start节点--start --定义Oozie Workflow的起始点
End节点 -- end --定义Oozie Workflow的结束点
Decision节点 -- decision --用于表述“switch-case”逻辑
Fork节点--fork--该节点会把执行流程叉开为多个并发的路径
Join节点--join--该节点表示Workflow的执行要进行等待,知道前一次fork节点产生的所有并发执行路径都达到join节点
Sub-Workflow节点--sub-workflow--该节点会调用一个子Workflow
Kill节点--kill--该节点会使Oozie服务器强制杀死当前的Workflow作业
- Hadoop高级编程之--Oozie
- hadoop之oozie配置
- Hadoop实战-中高级部分 之 Hadoop MapReduce高级编程
- Hadoop实战-中高级部分 之 Hadoop MapReduce高级编程
- Hadoop Streaming高级编程
- Hadoop MapReduce高级编程
- Hadoop MapReduce高级编程
- Hadoop Streaming高级编程
- (11.1.8)Hadoop基础教程之高级编程
- Hadoop基础教程之高级编程【自定义每个环节的实现】
- Hadoop集群(CHD4)实践之 (4) Oozie搭建
- Hadoop Oozie 学习笔记
- Hadoop Streaming高级编程
- 转载:Hadoop Streaming高级编程
- Hadoop--07--MapReduce高级编程
- 《Hadoop高级编程》之为Hadoop实现构建企业级安全解决方案
- Hadoop Oozie 学习笔记(六) Hadoop Oozie概述
- oozie在hadoop中的意义
- Python学习笔记(1)—文件操作
- jsp-servlet监听器
- 上下界网络流
- 算法日记(Java实现)第20160717(3)期——POJ1005/POJ1006
- Nginx配置文件nginx.conf中文详解
- Hadoop高级编程之--Oozie
- 8086汇编语言 T命令执行CS:IP所指内存的指令
- ESFramework ——可堪重任的网络通信框架
- C++STL之string
- Floyd --任意两点之间的最短路问题
- Part0:Volley源代码分析概述
- 关于UINavigationBar加载不规则的图片的总结
- caffe 进行自己的imageNet训练分类:loss一直是87.3365,accuracy一直是0
- Spring学习笔记五: AOP入门