Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序
網(wǎng)友分享,拿來共享一下
?
這是Hadoop學(xué)習(xí)全程記錄第2篇,在這篇里我將介紹一下如何在Eclipse下寫第一個(gè)MapReduce程序。?
新說明一下我的開發(fā)環(huán)境:?
操作系統(tǒng):在windows下使用wubi安裝了ubuntu 10.10?
hadoop版本:hadoop-0.20.2.tar.gz?
Eclipse版本:eclipse-jee-helios-SR1-linux-gtk.tar.gz?
為了學(xué)習(xí)方便這個(gè)例子在“偽分布式模式”Hadoop安裝方式下開發(fā)。?
第一步,我們先啟動(dòng)Hadoop守護(hù)進(jìn)程。?
如果你讀過我第1篇文章Hadoop學(xué)習(xí)全程記錄——hadoop 入門應(yīng)該比較清楚在“偽分布式模式”下啟動(dòng)Hadoop守護(hù)進(jìn)程的方法,在這里就不多說了。?
第二步,在Eclipse下安裝hadoop-plugin。?
1.復(fù)制 hadoop安裝目錄/contrib/eclipse-plugin/hadoop-0.20.2-eclipse-plugin.jar 到 eclipse安裝目錄/plugins/ 下。?
2.重啟eclipse,配置hadoop installation directory。?
如果安裝插件成功,打開Window-->Preferens,你會發(fā)現(xiàn)Hadoop Map/Reduce選項(xiàng),在這個(gè)選項(xiàng)里你需要配置Hadoop installation directory。配置完成后退出。?
3.配置Map/Reduce Locations。?
在Window-->Show View中打開Map/Reduce Locations。?
在Map/Reduce Locations中新建一個(gè)Hadoop Location。在這個(gè)View中,右鍵-->New Hadoop Location。在彈出的對話框中你需要配置Location name,如myubuntu,還有Map/Reduce Master和DFS Master。這里面的Host、Port分別為你在mapred-site.xml、core-site.xml中配置的地址及端口。如:?
Map/Reduce Master?
?
Java代碼? ?
DFS Master?
?
配置完后退出。點(diǎn)擊DFS Locations-->myubuntu如果能顯示文件夾(2)說明配置正確,如果顯示"拒絕連接",請檢查你的配置(我的配置完成之后只看到了一個(gè)文件夾tmp,不知道是什么原因)。?
?
第三步,新建項(xiàng)目。?
File-->New-->Other-->Map/Reduce Project?
項(xiàng)目名可以隨便取,如hadoop-test。?
復(fù)制 hadoop安裝目錄/src/example/org/apache/hadoop/example/WordCount.java到剛才新建的項(xiàng)目下面。?
第四步,上傳模擬數(shù)據(jù)文件夾。?
為了運(yùn)行程序,我們需要一個(gè)輸入的文件夾,和輸出的文件夾。輸出文件夾,在程序運(yùn)行完成后會自動(dòng)生成。我們需要給程序一個(gè)輸入文件夾。?
1.在當(dāng)前目錄(如hadoop安裝目錄)下新建文件夾input,并在文件夾下新建兩個(gè)文件file01、file02,這兩個(gè)文件內(nèi)容分別如下:?
file01?
file02?
2.將文件夾input上傳到分布式文件系統(tǒng)中。?
在已經(jīng)啟動(dòng)Hadoop守護(hù)進(jìn)程終端中cd 到hadoop安裝目錄,運(yùn)行下面命令:?
這個(gè)命令將input文件夾上傳到了hadoop文件系統(tǒng)了,在該系統(tǒng)下就多了一個(gè)input01文件夾,你可以使用下面命令查看:?
第五步,運(yùn)行項(xiàng)目。?
1.在新建的項(xiàng)目hadoop-test,點(diǎn)擊WordCount.java,右鍵-->Run As-->Run Configurations?
2.在彈出的Run Configurations對話框中,點(diǎn)Java Application,右鍵-->New,這時(shí)會新建一個(gè)application名為WordCount?
3.配置運(yùn)行參數(shù),點(diǎn)Arguments,在Program arguments中輸入“你要傳給程序的輸入文件夾和你要求程序?qū)⒂?jì)算結(jié)果保存的文件夾”,如:?
這里面的input01就是你剛傳上去文件夾。文件夾地址你可以根據(jù)自己具體情況填寫。?
4.點(diǎn)擊Run,運(yùn)行程序。?
點(diǎn)擊Run,運(yùn)行程序,過段時(shí)間將運(yùn)行完成,等運(yùn)行結(jié)束后,可以在終端中用命令:?
查看是否生成文件夾output01。?
用下面命令查看生成的文件內(nèi)容:?
如果顯示如下,恭喜你一切順利,你已經(jīng)成功在eclipse下運(yùn)行第一個(gè)MapReduce程序了。?
總結(jié)
以上是生活随笔為你收集整理的Hadoop学习全程记录——在Eclipse中运行第一个MapReduce程序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hadoop YARN
- 下一篇: Hadoop伪分布式配置试用+eclip