傳遞到Hadoop的ToolRunner(或任何MapReduce的動作)在命令行參數可以傳遞給ToolRunner如下:如何參數從Oozie的工作流程
hadoop jar myJar.jar com.Main -Dprop1=prop1value -Dprop2=prop2value
我想引用我的MapReduce工作爲來自Oozie的MapReduce操作的一部分。
我試圖在工作流定義屬性如下:
<property>
<name>param1</name>
<value>Hello World</value>
</property>
編輯 這是我怎樣,我想從我的MapReduce工作讀取參數:
Job job = new Job();
Configuration conf = job.getConfiguration();
System.out.println(conf.get("param1"));
但我無法從mapreduce程序中讀取它。
雖然我的問題說傳遞參數到ToolRunner,我不認爲這是特定於toolrunner。通常使用Oozie MapReduce操作調用MapReduce作業。 任何幫助將不勝感激!
是的,我已經經歷過這些。這些例子告訴你如何運行一般的MapReduce動作以及如何配置MapReduce作業(地圖類,減少類等),但它們不包括如何將參數傳遞給作業 – Chaos
你能提供一個例子嗎?你傳遞並嘗試獲取參數? – Oleksii
添加到我的問題中,我通過在workflow.xml中的''標記中的問題中定義屬性來傳遞參數 –
Chaos