6
我想將一個簡單的工作流轉換爲oozie。我試圖通過oozie的例子看,但他們有點過分。實際上,我想運行查詢並將結果輸出到文本文件。配置單元查詢的簡單oozie示例?
hive -e 'select * from tables' > output.txt
如何將它翻譯成oozie讓它每小時運行一次?
我想將一個簡單的工作流轉換爲oozie。我試圖通過oozie的例子看,但他們有點過分。實際上,我想運行查詢並將結果輸出到文本文件。配置單元查詢的簡單oozie示例?
hive -e 'select * from tables' > output.txt
如何將它翻譯成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>
所以在這裏蜂房的site.xml存在於$ HIVE_HOME/conf目錄文件夾中的網站的XML。
script.q文件包含實際的配置單元查詢。 select * from ${INPUT_TABLE}
。
如何以及在哪裏可以使用OUTPUT參數?
OUTPUT作爲參數傳遞給。 例如'$ {} OUTPUT' – WR10
翻譯成oozie的意思是,你是否希望有一個workflow.xml來執行一個調度程序作業,在每個小時運行這個hive語句? – WR10
是的,這正是我想要實現的目標,但是workflow.xml的樣子是什麼? – nickponline
您可能需要三個步驟才能做到這一點。 1.要爲配置單元作業執行的workflow.xml文件。 2.執行oozie工作流的shell腳本。 3.計劃每隔一小時定期運行shell腳本的cron作業。 – WR10