本博客属原创文章,转载请注明出处:http://guoyunsky.iteye.com/blog/1391975
欢迎加入Hadoop超级群: 180941958
网上中文资料有点少,我这里翻译下官网.对自己也是个梳理,希望对大家也有用.
Oozie是一个工作流引擎服务器,用于运行Hadoop Map/Reduce和Pig 任务工作流.同时Oozie还是一个Java Web程序,运行在Java Servlet容器中,如Tomcat.
Oozie工作流中拥有多个Action,如Hadoop Map/Reuce job,Hadoop Pig job等,所有的Action以有向无环图(DAG Direct Acyclic Graph)的模式部署运行.所以在Action的运行步骤上是有方向的,只能上一个Action运行完成后才能运行下一个Action.
Oozie工作流通过HPDL(一种通过XML自定义处理的语言,类似JBOSS JBPM的JPDL)来构造.
Oozie工作流中的Action在运程系统运行如(Hadoop,Pig服务器上).一旦Action完成,远程服务器将回调Oozie的接口并通知Action已经完成,这时Oozie又会以同样的方式执行工作流中的下一个Action,直到工作流中所有Action都完成(完成包括失败)
Oozie工作流中包含可控制的工作流节点(control flow node)和Action节点(action node).
Control flow node其实可以理解为Oozie的语法,比如可以定义开始(start),结束(end),失败(fail)节点.开始节点就表示从该节点开始运行.同时也提供一种机制去控制工作流的执行过程,如选择(decision),并行(fork),join节点.
Oozie工作流提供各种类型的Action用于支持不同的需要,如Hadoop Map/Reduce,Hadoop File System,Pig,SSH,HTTP,Email,Java,以及Oozie子流程.Oozie也支持自定义扩展以上各种类型的Action .
Oozie工作流允许自定义参数,如${inputDir}.
WordCount Workflow Example:
工作流图:
workflow.xml
<workflow-app name='wordcount-wf' xmlns="uri:oozie:workflow:0.1"> <start to='wordcount'/> <action name='wordcount'> <map-reduce> <job-tracker>${jobTracker}</job-tracker> <name-node>${nameNode}</name-node> <configuration> <property> <name>mapred.mapper.class</name> <value>org.myorg.WordCount.Map</value> </property> <property> <name>mapred.reducer.class</name> <value>org.myorg.WordCount.Reduce</value> </property> <property> <name>mapred.input.dir</name> <value>${inputDir}</value> </property> <property> <name>mapred.output.dir</name> <value>${outputDir}</value> </property> </configuration> </map-reduce> <ok to='end'/> <error to='end'/> </action> <kill name='kill'> <message>Something went wrong: ${wf:errorCode('wordcount')}</message> </kill/> <end name='end'/> </workflow-app>
同时自己成org.myorg.WordCount这个Hadoop Map/Reduce Job,网上搜索一大把.
配置打包后通过OozieClient提交给Hadoop就直接可以运行了.
更多技术文章、感悟、分享、勾搭,请用微信扫描:
相关推荐
Hadoop是一个开源的分布式计算平台,主要由Apache软件基金会维护。它被设计用来在普通硬件构建的集群环境中存储和处理大量数据。Hadoop的核心特性包括: 1. **分布式存储**:Hadoop分布式文件系统(HDFS)可以存储...
【HADOOP学习笔记】 Hadoop是Apache基金会开发的一个开源分布式计算框架,是云计算领域的重要组成部分,尤其在大数据处理方面有着广泛的应用。本学习笔记将深入探讨Hadoop的核心组件、架构以及如何搭建云计算平台。...
- Oozie:是一个用于管理Hadoop作业的工作流调度系统。 - Avro:是一种数据序列化系统,用于高效的跨语言数据交换。 - HDFS Federation:是Hadoop 2.x版本的一个新特性,用于解决单个NameNode的扩展性限制。 Hadoop...
Apache Hadoop 中,Oozie 是一个至关重要的组件,它是一个开源的工作流调度引擎,专门设计用于管理和协调在Hadoop生态系统中的各种作业。Oozie 由Cloudera公司贡献给Apache社区,它是一个基于工作流引擎的系统,能够...
在大数据领域,构建一个完整的生态系统是至关重要的,其中包括多个组件,如Hadoop、Spark、Hive、HBase、Oozie、Kafka、Flume、Flink、Elasticsearch和Redash。这些组件协同工作,提供了数据存储、处理、调度、流...
hadoop oozie启动或运行报错:Table ‘oozie.VALIDATE_CONN’ doesn’t exist
《Hadoop学习笔记》 Hadoop,作为大数据处理的核心框架,是开源社区的杰作,由Apache软件基金会维护。这份文档旨在深入解析Hadoop的基本概念、架构及其在大数据处理中的应用,帮助读者全面掌握这一重要技术。 一、...
Hadoop 安装 学习 入门教程 Hadoop家族系列文章,主要介绍Hadoop家族产品,常用的项目包括Hadoop, Hive, Pig, HBase, Sqoop, Mahout, Zookeeper, Avro, Ambari, Chukwa,新增加的项目包括,YARN, Hcatalog, Oozie, ...
对于CDH版本的Hadoop,需要在`core-site.xml`、`mapred-site.xml`和`yarn-site.xml`中添加Oozie相关的配置项,如设置`hadoop.proxyuser.atguigu.hosts`和`hadoop.proxyuser.atguigu.groups`以允许Oozie代理用户,...
### Hadoop 入门学习知识点概览 #### Hadoop 是什么? Hadoop 是 Apache 基金会下的一款开源软件框架,旨在通过集群的方式高效地处理大规模数据集。Hadoop 提供了分布式文件系统(HDFS)、运算资源调度系统(YARN...
《Hadoop学习笔记》 Hadoop,作为大数据处理的核心组件之一,是Apache软件基金会开发的开源框架,专门针对大规模数据集进行分布式计算。这个框架基于Java语言实现,它设计的目标是高容错性、可扩展性和高效的数据...
Apache Oozie是一款专为管理Hadoop作业而设计的工作流调度系统。作为Hadoop生态系统的重要组件,Oozie允许用户创建包含多个任务的复杂数据处理工作流,并按预设的计划执行。本文将详细阐释Oozie的基本概念、安装配置...
适用于Hadoop 2.x的Oozie 这是一个映像,该映像对oozie / webapp的uber配置文件进行了一些更改,并使用hadoop-2配置文件和Hadoop 2.7.0库构建了一个Oozie发行版。 用法 将Oozie sharelib安装到HDFS docker run -ti...
oozie 入门 oozie概述:oozie能干什么 oozie格式:怎么用oozie oozie执行:怎么运行oozie
这个学习资料包含的"笔记"可能涵盖了Hadoop的核心组件、生态系统、安装配置以及实际操作等多个方面。以下是对Hadoop 3.1.3的一些关键知识点的详细说明: 1. **Hadoop核心组件**: - **HDFS(Hadoop Distributed ...
在Hadoop生态系统中,Oozie是一个工作流调度系统,用于管理Hadoop作业。它允许用户定义、调度和协调各种Hadoop相关任务,如MapReduce、Pig、Hive、Sqoop等。当遇到“Table ‘oozie.VALIDATE_CONN’ doesn’t exist”...
[atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ tar -zxvf oozie-examples.tar.gz 2)创建工作目录 [atguigu@hadoop102 oozie-4.0.0-cdh5.3.6]$ mkdir oozie-apps/ 3)拷贝任务模板到oozie-apps/目录 [atguigu@hadoop...
这个压缩包“hadoop笔记打包下载(想学hadoop不下载后悔)”显然是一个丰富的学习资源集合,涵盖了Hadoop生态系统的多个重要组成部分。下面将详细解释这些关键知识点。 1. **Hadoop HDFS(Hadoop Distributed File ...