我正在尝试将简单的工作流程转换为oozie.我试过了oozie的例子,但是他们有点过分了.实际上我想运行查询并将结果输出到文本文件.
hive -e 'select * from tables' > output.txt
Run Code Online (Sandbox Code Playgroud)
如何将其翻译成oozie让它每小时运行一次?
您的工作流程可能看起来像这样......
workflow.xml
<workflow-app xmlns="uri:oozie:workflow:0.2" name="hive-wf">
<start to="hive-node"/>
<action name="hive-node">
<hive xmlns="uri:oozie:hive-action:0.2">
<job-tracker>localhost:50001</job-tracker>
<name-node>hdfs://localhost:50000</name-node>
<configuration>
<property>
<name>mapred.job.queue.name</name>
<value>default</value>
</property>
<property>
<name>oozie.hive.defaults</name>
<value>/user/user1/oozie/hive-site.xml</value>
</property>
</configuration>
<script>script.q</script>
<param>INPUT_TABLE=SampleTable</param>
<param>OUTPUT=/user/user1/output-data/hive</param>
</hive>
<ok to="end"/>
<error to="fail"/>
</action>
<kill name="fail">
<message>Hive failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>
</kill>
<end name="end"/>
</workflow-app>
Run Code Online (Sandbox Code Playgroud)
所以这里的hive-site.xml是$ HIVE_HOME/conf文件夹中的站点xml .
script.q文件包含实际的配置单元查询.select * from ${INPUT_TABLE}.
我们如何以及在哪里使用OUTPUT参数?
| 归档时间: |
|
| 查看次数: |
20641 次 |
| 最近记录: |