0

我正在尝试在 Hortonworks 发行版下执行 map-reduce oozie 示例……但它还可以运行……

首先,这里是我的自定义 Hadoop 配置(来自 Ambari)。我不得不修改核心 xml 来纠正我的“模拟”问题......

hadoop.proxyuser.oozie.groups=*
hadoop.proxyuser.oozie.hosts=*

工作得很好,但现在我有这个:

Error: E0803 : E0803: IO error, <openjpa-2.1.0-r422266:1071316 fatal store error> 

org.apache.openjpa.persistence.RollbackException: The transaction has been rolled back. 
See the nested exceptions for details on the errors that occurred. FailedObject: org.apache.oozie.WorkflowJobBean@3f623c47

我已经找到了有同样错误但没有解决方案的人......也许你能帮助我!

我的 job.properties(在本地)

nameNode=hdfs://namenode01:8020
jobTracker=namenode01:8021
queueName=default
examplesRoot=examples

oozie.wf.application.path=${nameNode}/oozie/${examplesRoot}/apps/map-reduce
outputDir=map-reduce

和我的 workflow.xml(在 HDFS 上)

<workflow-app xmlns="uri:oozie:workflow:0.2" name="map-reduce-wf">
    <start to="mr-node"/>
    <action name="mr-node">
        <map-reduce>
            <job-tracker>${jobTracker}</job-tracker>
            <name-node>${nameNode}</name-node>
            <prepare>
                <delete path="${nameNode}/oozie/examples/output-data/${outputDir}"/>
            </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>/oozie/examples/input-data/text</value>
                </property>
                <property>
                    <name>mapred.output.dir</name>
                    <value>/oozie/examples/output-data/${outputDir}</value>
                </property>
            </configuration>
        </map-reduce>
        <ok to="end"/>
        <error to="fail"/>
    </action>
    <kill name="fail">
        <message>Map/Reduce failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
    </kill>
    <end name="end"/>
</workflow-app>

我正在尝试使用以下命令执行我的 wf:

oozie job -oozie http://edgenode01:11000/oozie -config /home/oozie/examples/apps/no-op/job.properties -run

非常感谢!

4

2 回答 2

0

在 your-hadoop-host:50030/jobhistory.jsp 打开 Job History 并找到您的工作。那里去映射任务并查看日志。

于 2013-11-07T18:50:26.967 回答
0

如果您使用的是 derby db - 检查 db 位置以查看是否有任何非预期用户拥有的锁定文件 - 如果是,请将其删除并停止并再次启动 oozie。

于 2015-03-30T03:32:05.217 回答