我正在尝试使用Oozie做一个简单的工作。
这将是一个简单的猪动作。
我有一个文件:firstScript.pig包含:
dual = LOAD 'default.dual' USING org.apache.hcatalog.pig.HCatLoader();
store dual into 'dummy_file.txt' using PigStorage();
和一个workflow.xml包含:
<workflow-app name="FirstWorkFlow" xmlns="uri:oozie:workflow:0.2">
<start to="FirstJob"/>
<action name="FirstJob">
<pig>
<job-tracker>hadoop:50300</job-tracker>
<name-node>hdfs://hadoop:8020</name-node>
<script>/FirstScript.pig</script>
</pig>
<ok to="okjob"/>
<error to="errorjob"/>
</action>
<ok name='okjob'>
<message>job OK, message[${wf:errorMessage()}]</message>
</ok>
<error name='errorjob'>
<message>job error, error message[${wf:errorMessage()}]</message>
</error>
</workflow-app>
我创建了结构:
FirstScript
|- lib
|---FirstScript.pig
|- workflow.xml
现在呢?如何部署它并与Oozie一起运行?
谁能经验更多的帮助?
问候
Pawel
我这样做:
hadoop fs -put workflow.xml some_dir/
oozie job --oozie http://your_host:11000/oozie -config cluster_conf.xml -run
和我的cluster_conf.xml看起来像这样(请先检查您的端口,依赖Hadoop发行版):
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<configuration>
<property>
<name>nameNode</name>
<value>hdfs://my_nn:8020</value>
</property>
<property>
<name>jobTracker</name>
<value>my_jt:8050</value>
</property>
<property>
<name>oozie.wf.application.path</name>
<value>/user/my_user/some_dir/workflow.xml</value>
</property>
</configuration>
配置文件应指向job.properties代替file.xml
。因为,job.properties
包含通往workflow.xml
的路径
oozie job --oozie http://your_host:11000/oozie -config **/job.properties** -run