如何从hive oozie动作提供hiveconf变量

时间:2017-04-26 21:29:14

标签: oozie

我想从我的hive-oozie动作提供变量hiveconf命名空间,怎么做?

<action name="setupAct">
  <hive xmlns="uri:oozie:hive-action:0.2">
    <job-tracker>maprfs:///</job-tracker>
    <name-node>maprfs:///</name-node>
    <script>
      XYZ.hql
    </script>
    <!--how to add variable to hiveconf-->
    <param>DB_NAME=test</param>
  </hive>
  <ok to="ok" />
  <error to="error" />
</action>

param元素内的值作为--hivevar命名空间提供给hive。

下面是应用程序日志,param元素被添加为hivevar:

------------------------
  DB_NAME=test
------------------------
Hive command arguments :
      --hivevar
        DB_NAME=test
        -f
         test.hql

1 个答案:

答案 0 :(得分:1)

对于Oozie中的hiveconf,请使用配置元素。

<hive xmlns="uri:oozie:hive-action:0.2">
    <job-tracker>maprfs:///</job-tracker>
    <name-node>maprfs:///</name-node>
    <script>
      XYZ.hql
    </script>
    <!--how to add variable to hiveconf-->
    <configuration>
       <property>
          <name>hive.default.fileformat</name>
          <value>Parquet</value>
       </property>
    </configuration>
    <param>DB_NAME=test</param>
  </hive>