आपका कार्यप्रवाह कुछ इस तरह लग सकता है ...
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 फ़ोल्डर में मौजूद है।
script.q फ़ाइल में वास्तविक हाइव क्वेरी है। select * from ${INPUT_TABLE}
।
हम कैसे और कहां OUTPUT param का उपयोग कर सकते हैं?
ओज़ी माध्यमों में अनुवाद करने का मतलब है, क्या आप प्रत्येक घंटे के लिए इस हाइव स्टेटमेंट को चलाने वाले शेड्यूलर नौकरी को निष्पादित करने के लिए वर्कफ़्लो.एक्सएमएल रखना चाहते हैं? – WR10
हाँ यह वही है जो मैं प्राप्त करना चाहता हूं, लेकिन वर्कफ़्लो.एक्सएमएल कैसा दिखता है? – nickponline
ऐसा करने के लिए आपको तीन चरणों की आवश्यकता हो सकती है। 1. एक वर्कफ़्लो.एक्सएमएल फ़ाइल को हाइव जॉब के लिए निष्पादित किया जाना है। 2. ओजी वर्कफ़्लो निष्पादित करने के लिए एक खोल स्क्रिप्ट। 3. हर घंटे के लिए समय-समय पर शैल स्क्रिप्ट चलाने के लिए शेड्यूल करने के लिए एक क्रॉन नौकरी। – WR10