1. 程式人生 > >Centos下使用Hadoop2.6.0-eclipse-plugin外掛

Centos下使用Hadoop2.6.0-eclipse-plugin外掛

我的開發環境:

作業系統centos5.5 一個namenode 兩個datanode

Hadoop版本:hadoop-0.20.203.0

Eclipse版本:eclipse-java-helios-SR2-linux-gtk.tar.gz(使用3.7的版本總是崩潰,讓人鬱悶)

第一步:先啟動hadoop守護程序

第二步:在eclipse上安裝hadoop外掛

1.複製 hadoop安裝目錄/contrib/eclipse-plugin/hadoop-0.20.203.0-eclipse-plugin.jar 到 eclipse安裝目錄/plugins/ 下。 

2.重啟eclipse,配置hadoop installation directory。 
如果安裝外掛成功,開啟Window-->Preferens,你會發現Hadoop Map/Reduce選項,在這個選項裡你需要配置Hadoop installation directory。配置完成後退出。

3.配置Map/Reduce Locations。 
在Window-->Show View中開啟Map/Reduce Locations。 
在Map/Reduce Locations中新建一個Hadoop Location。在這個View中,右鍵-->New Hadoop Location。在彈出的對話方塊中你需要配置Location name,如Hadoop,還有Map/Reduce Master和DFS Master。這裡面的Host、Port分別為你在mapred-site.xml、core-site.xml中配置的地址及埠。如:

Map/Reduce Master

192.168.1.101
9001

DFS Master

192.168.1.101
9000

配置完後退出。點選DFS Locations-->Hadoop如果能顯示資料夾(2)說明配置正確,如果顯示"拒絕連線",請檢查你的配置。


第三步:新建專案。 
File-->New-->Other-->Map/Reduce Project 
專案名可以隨便取,如WordCount。 
複製 hadoop安裝目錄/src/example/org/apache/hadoop/example/WordCount.java到剛才新建的專案下面。 

第四步:上傳模擬資料資料夾。 
為了執行程式,我們需要一個輸入的資料夾,和輸出的資料夾。
在本地新建word.txt

java c++ python c
java c++ javascript 
helloworld hadoop
mapreduce java hadoop hbase 

通過hadoop的命令在HDFS上建立/tmp/workcount目錄,命令如下:bin/hadoop fs -mkdir /tmp/wordcount

通過copyFromLocal命令把本地的word.txt複製到HDFS上,命令如下:bin/hadoop fs -copyFromLocal /home/grid/word.txt  /tmp/wordcount/word.txt


第五步:執行專案

1.在新建的專案Hadoop,點選WordCount.java,右鍵-->Run As-->Run Configurations 
2.在彈出的Run Configurations對話方塊中,點Java Application,右鍵-->New,這時會新建一個application名為WordCount 
3.配置執行引數,點Arguments,在Program arguments中輸入“你要傳給程式的輸入資料夾和你要求程式將計算結果儲存的資料夾”,如:

hdfs://centos1:9000/tmp/wordcount/word.txt   hdfs://centos1:9000/tmp/wordcount/out

4、如果執行時報java.lang.OutOfMemoryError: Java heap space 配置VM arguments(在Program arguments下)

-Xms512m -Xmx1024m -XX:MaxPermSize=256m

5.點選Run,執行程式。 

點選Run,執行程式,過段時間將執行完成,等執行結束後,檢視執行結果,使用命令: bin/hadoop fs -ls /tmp/wordcount/out檢視例子的輸出結果,發現有兩個資料夾和一個檔案,使用命令檢視part-r-00000檔案, bin/hadoop fs -cat /tmp/wordcount/out/part-r-00000可以檢視執行結果。

複製程式碼
c    1
c++    2
hadoop    2
hbase    1
helloworld    1
java    3
javascript    1
mapreduce    1
python    1
複製程式碼