Apache Oozie
什么是 Oozie
Oozie 是一种可扩展、可扩展和可靠的系统,用于通过 Web 服务定义、管理、调度和执行复杂的 Hadoop 工作负载。更具体地说,这包括:
- 基于 XML 的声明性 framework ,用于指定作业或相关作业的复杂工作流.
- 支持不同类型的工作,如 Hadoop Map-Reduce、Pipe、Streaming、Pig、Hive 和自定义 Java 应用程序。
- 基于频率和/或数据可用性的工作流调度。
- 监控能力,自动重试和故障处理的工作.
- 可扩展和可插拔架构,以允许任意网格编程范例.
- 身份验证、授权和容量感知的负载控制,以允许多租户软件作为服务。
Oozie 概述
Oozie 是一种基于服务器的工作流引擎,专门用于运行带有运行 Hadoop map/reduce 和 Pig 作业的动作的工作流作业。
Oozie 是在 Java Servlet-容器中运行的 Java Web 应用程序。
出于 Oozie 的目的,工作流是在控制依赖 DAG(有向无环图)中安排的动作的集合(即 Hadoop map/reduce jobs、Pig jobs)。从一个动作到另一个动作的“控制依赖”意味着第二个动作在第一个动作完成之前不能运行。
Oozie 工作流定义是用 HPDL(一种类似于 JBoss JBPM JPDL 的 XML 过程定义语言)编写的。
Oozie 工作流操作启动远程系统中的作业(即 Hadoop、Pig)。在动作完成后,远程系统回调 Oozie 以通知动作完成,此时 Oozie 继续进行工作流程中的下一个动作。
Oozie 工作流包含控制流节点和动作节点。
控制流节点定义了工作流的开始和结束(开始、结束和失败节点),并提供了一种机制来控制工作流执行路径(Decision, Fork 和 join 节点)。
操作节点是工作流触发执行计算/处理任务的机制。 Oozie 提供了对不同类型的动作的支持:Hadoop map-reduce、Hadoop 文件系统、PIG、SSH、HTTP、Email 和 Oozie 子工作流。 Oozie 可以扩展以支持额外类型的动作。
Oozie 工作流可以被参数化(在工作流定义中使用像 ${inputdir}这样的变量)。在提交工作流作业时,必须提供参数的值。如果适当地参数化(即使用不同的输出目录),几个相同的工作流作业可以同时进行。
文件:
Oozie Web 服务与内置的细节捆绑在一起文档。
有关更多信息,请访问:http://oozie.apache.org/
Oozie 快速启动:http://oozie.apache.org/docs/5.0.0/DG_QuickStart.html
支持的 Hadoop 版本:
这个版本的 Oozie 主要针对 Hadoop2.4 进行了测试。x 和 2.6。x.
如有任何疑问,请电邮至:
使用链接订阅: