2014-02-12 21 views
0

我是Hadoop的新手,我有一個非常類似的問題,如posted here。唯一的事情是OP在Linux上運行hadoop,因爲我在Windows上運行它。HDInsight字數映射減少程序停留在mapper 100%和reducer 0%

我在本地機器上安裝了Hadoop Azure HDInsight仿真器。當我運行一個簡單的字數統計程序。 Mapper作業完全運行100%,但Reduce作業卡住0%。

enter image description here

我試圖調試它由克里斯的建議(針對this que),發現與主機上減速運行作業的問題(這是因爲OP的具體問題)

enter image description here

Reduce未在localhost上運行,而是在某些主機名192.168.17.213上運行,該問題未得到解決,並且減速器無法從此處繼續進行。

這些都是錯誤日誌

copy failed: attempt_201402111921_0017_m_000000_0 from 192.168.17.213 
2014-02-12 01:51:53,073 WARN org.apache.hadoop.mapred.ReduceTask:  
java.net.ConnectException: Connection timed out: connect 

OP獲得通過chaning \etc\hosts文件設置爲localhost解決這個問題。

但是,這似乎是一個Linux配置..如何將我的主機名設置爲我的Hadoop Azure HDInsight模擬器中的本地主機?

回答

0

有一篇文章向您展示如何在HDInsight模擬器上運行MapReduce程序。本文是位於http://www.windowsazure.com/en-us/documentation/articles/hdinsight-get-started-emulator/的HDInsight仿真器入門。

+0

本文展示了使用java map reduce可執行文件(.jar文件)的運行映射計數。在這裏,我使用.NET hadoop API來執行我的程序。我非常肯定,我的程序是好的唯一的事情就是我的reducer在某個主機名上運行,然後在localhost上運行,它無法解析。在Emulator的某個地方必須有一些配置將它設置爲我想知道的localhost。 –