配置Oozie MapReduce作业
功能描述
MapReduce任务节点,负责执行一个map-reduce任务。
参数解释
MapReduce Action节点中包含的各参数及其含义,请参见表1。
参数 |
含义 |
---|---|
name |
map-reduce action的名称 |
resourceManager |
MapReduce ResourceManager地址 |
name-node |
HDFS NameNode地址 |
queueName |
任务处理时使用的MapReduce队列名 |
mapred.mapper.class |
Mapper类名 |
mapred.reducer.class |
Reducer类名 |
mapred.input.dir |
MapReduce处理数据的输入目录 |
mapred.output.dir |
MapReduce处理后结果数据输出目录 |
mapred.map.tasks |
MapReduce map任务个数 |
“${变量名}”表示:该值来自job.properties所定义。
例如:${nameNode}表示的就是“hdfs://hacluster”。(可参见配置Oozie作业运行参数)
样例代码
<action name="mr-dataLoad"> <map-reduce> <resource-manager>${resourceManager}</resource-manager> <name-node>${nameNode}</name-node> <prepare> <delete path="${nameNode}/user/${wf:user()}/${dataLoadRoot}/output-data/map-reduce"/> </prepare> <configuration> <property> <name>mapred.job.queue.name</name> <value>${queueName}</value> </property> <property> <name>mapred.mapper.class</name> <value>org.apache.oozie.example.SampleMapper</value> </property> <property> <name>mapred.reducer.class</name> <value>org.apache.oozie.example.SampleReducer</value> </property> <property> <name>mapred.map.tasks</name> <value>1</value> </property> <property> <name>mapred.input.dir</name> <value>/user/oozie/${dataLoadRoot}/input-data/text</value> </property> <property> <name>mapred.output.dir</name> <value>/user/${wf:user()}/${dataLoadRoot}/output-data/map-reduce</value> </property> </configuration> </map-reduce> <ok to="copyData"/> <error to="fail"/> </action>