Hue:oozie参数

时间:2016-02-05 17:49:01

标签: hive oozie hue

我想在oozie中将2个参数传递给我的Hiveql脚本, 我的剧本:

ALTER TABLE default.otarie_appsession 
ADD IF NOT EXISTS PARTITION ( insert_date=${dt},hr=${hr} );

我的Oozie工作流程:

enter image description here

当我发送作业时,它要求参数值,所以我把:

enter image description here

这就是错误:

2016-02-05 18:41:55,460 WARN org.apache.oozie.action.hadoop.HiveActionExecutor: SERVER[DVS1VM65] USER[root] GROUP[-] TOKEN[] APP[My_Workflow] JOB[0000290-160122145737153-oozie-oozi-W] ACTION[0000290-160122145737153-oozie-oozi-W@hive-a586] Launcher ERROR, reason: Main class [org.apache.oozie.action.hadoop.HiveMain], exit code [40000]

这是工作流程的XML:

<workflow-app name="My_Workflow" xmlns="uri:oozie:workflow:0.5">
    <start to="hive-a586"/>
    <kill name="Kill">
        <message>L&#39;action a échoué, message d&#39;erreur[${wf:errorMessage(wf:lastErrorNode())}]</message>
    </kill>
    <action name="hive-a586">
        <hive xmlns="uri:oozie:hive-action:0.2">
            <job-tracker>${jobTracker}</job-tracker>
            <name-node>${nameNode}</name-node>
              <job-xml>/user/oozie/some_scripts/hive-site.xml</job-xml>
            <script>/user/oozie/some_scripts/addpart.hql</script>
              <param>hr=</param>
              <param>dt=</param>
        </hive>
        <ok to="End"/>
        <error to="Kill"/>
    </action>
    <end name="End"/>
</workflow-app>

当我删除所有参数并使用硬编码值时,脚本工作正常,所以很明显我有问题传递参数。我的最终目标是通过当前的日期和时间。

谢谢。

1 个答案:

答案 0 :(得分:1)

如何使用 Oozie 参数设置 Hive 参数...

<param>hr=${bilouteHR}</param>
<param>dt=${bilouteDT}</param>

...然后在提交时设置这些 Oozie 参数的值?

bilouteHR
     00
bilouteDT
     20160105

希望能解决你的问题,biloute。