在這個hadoop教程的底層示例中,有一個「configure()」方法。 http://hadoop.apache.org/common/docs/r0.20.2/mapred_tutorial.html#Source+Code-N10FD0在hadoop中,如何在「configure()」方法中打印?
我想在它裏面放一個打印語句來知道它到達那裏。然而,沒有什麼打印到控制檯。我做錯了,還是有什麼可以讓我不明白的事情。
它位於頁面底部的示例的第28行。
下面是我所說的,但同樣只有WordCount的正常輸出被輸入到控制檯。
public void configure(JobConf job) {
System.out.println("HERE [email protected]#$%^&*");
caseSensitive = job.getBoolean("wordcount.case.sensitive", true);
inputFile = job.get("map.input.file");
謝謝。這是一個很好的答案。你會碰巧知道爲什麼一個變量不會在配置方法中改變。我設置了一個名爲changeMe的全局int。在運行作業之前,我將其設置爲3,並在配置中將其設置爲6.我將其打印在主方法的最後面。輸出爲3. – DSH 2012-07-17 12:41:00
在任務嘗試中對配置所做的任何更改都不會寫回到全局配置 - 爲每個任務嘗試進行復制,而只是更新副本,而不是主人 – 2012-07-17 12:54:10
或者您是談論你的mapper/reducer類中的全局(靜態)變量?在這種情況下,這些任務將在單獨的JVM中運行,並且這些值再也不會返回到主要運行的作業客戶端 – 2012-07-17 12:55:50