通常我們可以用Eclipse作為Hadoop程式的開發平台。
1) 下載Eclipse
下載地址:http://www.eclipse.org/downloads/
根據作業系統類型,選擇合適的版本下載並安裝。
2) 下載並編譯Hadoop的Eclipse外掛程式
網上可直接下載到Hadoop 1.x 的Eclipse外掛程式,但是該外掛程式和Hadoop2.2 不相容,所以無法使用。
Hadoop 2.2 的Eclipse外掛程式正處於開發過程中,你可以直接下載原始碼並編譯。本人在編譯過程中碰到了一些ant的配置錯誤導致無法正常編譯,修改ant配置即編譯成功,為方便大家,我直接提供編譯後的.jar檔案供大家下載:
代碼下載地址:https://github.com/winghc/hadoop2x-eclipse-plugin
編譯後的外掛程式下載地址:http://download.csdn.net/detail/zythy/6735167
3) 配置Hadoop外掛程式
將下載的hadoop-eclipse-plugin-2.2.0.jar檔案放到Eclipse的dropins目錄下,重啟Eclipse即可看到該外掛程式已生效。
通過Open Perspective菜單開啟Map Reduce視圖,如下:
選中大象表徵圖,右鍵點擊Edit Hadoop Location編輯Hadoop配置資訊:
填寫正確的Map/Reduce和HDFS資訊。(具體根據您的配置而定)
4) 建立簡單Mapreduce項目
通過嚮導建立一個Map/Reduce項目。在此過程中,請配置Hadoop的安裝路徑。
5) 通過Eclipse訪問DFS
開啟Resource視圖,即可看到DFS:
此時,你可對DFS進行一些操作,比如上傳本地檔案到HDFS等等,如下圖:
至此,Hadoop的開發環境大致配置完成,下一節我們將看到如何寫一個簡單的MapReduce程式並放到Hadoop叢集上運行。
附上我自己本地環境的幾個設定檔內容供大家參考,有錯之處敬請指正,謝謝。
1)Core-stie.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
2)hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/var/data/hadoop/hdfs/nn</value>
</property>
<property>
<name>fs.checkpoint.dir</name>
<value>file:/var/data/hadoop/hdfs/snn</value>
</property>
<property>
<name>fs.checkpoint.edits.dir</name>
<value>file:/var/data/hadoop/hdfs/snn</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/var/data/hadoop/hdfs/dn</value>
</property>
</configuration>
3)Mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
4)yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
</configuration>