我正在尝试运行包含sqoop和hive作业的oozie工作流,但在运行时,作业的状态变为prep,并在一段时间后转换为start\u retry,如图所示
我的workflow.xml文件是
<workflow-app xmlns="uri:oozie:workflow:0.5" name="simpleWF">
<start to="sqoop-import-A"/>
<action name="sqoop-import-A">
<sqoop xmlns="uri:oozie:sqoop-action:0.2">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>default</value>
</property>
</configuration>
<command>import --connect
jdbc:mysql://quickstart.cloudera/movie_lens --username
root --password cloudera --table ratings --target-dir
/user/cloudera/Movie_AY377330 -m 1</command>
</sqoop>
<ok to="sqoop-import-B"/>
<error to="fail"/>
</action>
<action name="sqoop-import-B">
<sqoop xmlns="uri:oozie:sqoop-action:0.2">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>default</value>
</property>
</configuration>
<command>import --connect
jdbc:mysql://quickstart.cloudera/movie_lens --username root
--password cloudera --table movie --target-dir
/user/cloudera/Movie_AY3773301 -m 1</command>
</sqoop>
<ok to="sqoop-import-C"/>
<error to="fail"/>
</action>
<action name="sqoop-import-C">
<sqoop xmlns="uri:oozie:sqoop-action:0.2">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>default</value>
</property>
</configuration>
<command>sqoop import --connect
jdbc:mysql://quickstart.cloudera/movie_lens --username
root --password cloudera --table tags --target-dir
/user/cloudera/Movie_AY3773302 -m 1</command>
</sqoop>
<ok to="hive-node"/>
<error to="fail"/>
</action>
<action name="hive-node">
<hive xmlns="uri:oozie:hive-action:0.2">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<job-xml>hive-site.xml</job-xml>
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>${queueName}</value>
</property>
</configuration>
<script>hive1.hql</script>
</hive>
<ok to="hive-node-2"/>
<error to="fail"/>
</action>
<action name="hive-node-2">
<hive xmlns="uri:oozie:hive-action:0.2">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<job-xml>hive-site.xml</job-xml>
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>${queueName}</value>
</property>
</configuration>
<script>hive2.hql</script>
<param>OUTPUT_PATH1=${outputPath1}</param>
</hive>
<ok to="hive-node-3"/>
<error to="fail"/>
</action>
<action name="hive-node-3">
<hive xmlns="uri:oozie:hive-action:0.2">
<job-tracker>${jobTracker}</job-tracker>
<name-node>${nameNode}</name-node>
<job-xml>hive-site.xml</job-xml>
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>${queueName}</value>
</property>
</configuration>
<script>hive3.hql</script>
<param>OUTPUT_PATH2=${outputPath2}</param>
</hive>
<ok to="end"/>
<error to="fail"/>
</action>
<kill name="fail">
<message>error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name="end"/>
我的job.properties文件是
nameNode=hdfs://localhost:8020
jobTracker=localhost:50300
queueName=default
exampleRoot=example
folder= test
outputPath1=
outputPath2=
oozie.use.system.libpath=true
oozie.libpath=/user/oozie/share/lib
oozie.wf.application.path=${nameNode}/user/${user.name}/${exampleRoot}
我在oozie的工作中发现了一个类似的问题,在准备状态下的开始操作时卡住了,我试图解决这个问题,但不知道怎么做。
我知道我的namenode或jobtracker地址有问题。
我可以通过以下方式访问浏览器中的namenodelocalhost:50070
一段时间后,作业因错误而暂停
JA009: Failed on local exception:
com.google.protobuf.InvalidProtocolBufferException: Protocol message end-
group tag did not match expected tag.; Host Details : local host is:
"quickstart.cloudera/127.0.0.1"; destination host is: "localhost":8088;
提前谢谢。
暂无答案!
目前还没有任何答案,快来回答吧!