1. 程式人生 > >Eclipse跑WordCount.java

Eclipse跑WordCount.java

一、實驗目的
1.通過Eclipse連線Hadoop
2.用Eclipse對HDFS進行操作
二、實驗原理
Eclipse 是一個開放原始碼的、基於Java的可擴充套件開發平臺。就其本身而言,它只是一個框架和一組服務,用於通過外掛元件構建開發環境。通過Eclipse的Hadoop外掛可以使Eclipse對HDFS進行操作,同時,可以進行程式編寫後的對叢集進行MepReduce操作。從Eclipse3.5開始,安裝目錄下就多了一個dropins目錄。只要將外掛解壓後拖到該目錄即可安裝外掛。
比如安裝svn外掛subclipse-1.8.16.zip,只需要如下的三步即可:
1、使用winrar等壓縮軟體將壓縮包解壓至某一資料夾,比如subclipse-1.8.16
2、將此目錄移動/複製至Eclipse安裝目錄下的dropins目錄
3、重啟Eclipse。
由於此種安裝方式可以將不同的外掛安裝在不同的目錄裡,並且不用麻煩地寫配置檔案,因此管理起來會非常方便,推薦使用
三、實驗環境
虛擬機器數量:3臺
作業系統:Ubuntu 16.04
Hadoop:Hadoop 2.7.6
hadoop-common-2.7.6-bin-master.zip
Java:java version “1.8.0_144”
Eclipse:eclipse-inst-win64.exe

四、實驗內容及步驟

  1. 將下載的hadoop-eclipse-plugin-2.7.6.jar檔案放到eclipse的dropins目錄下,重啟eclipse開啟Windows -> Preferences後,在視窗左側會有Hadoop Map/Reduce選項,點選此選項,在視窗右側設定Hadoop(已配置好的Hadoop)安裝路徑。

  2. 通過Window -> Open Perspective->Other選單開啟Map Reduce檢視,在eclipse控制檯出現Map/Reduce Locations

  3. 在控制檯右擊圖示,進行配置如圖,其中Host配置需要連線的master的IP。
    在這裡插入圖片描述


    在這裡插入圖片描述

  4. 點選DFS Locations–>Hadoop如果能顯示資料夾如圖所示,說明配置正確
    在這裡插入圖片描述

  5. 新建專案,File–>New–>Other–>Map/Reduce Project,可複製hadoop-2.7.6-src\hadoop-2.7.6-src\hadoop-mapreduce-project\hadoop-mapreduce-examples\src\main\java\org\apache\hadoop\examples下WordCount.java程式碼

  6. 上傳模擬資料資料夾,為了執行程式,我們需要一個輸入的資料夾,和輸出的資料夾。
    通過hadoop shell命令進行建立輸入資料夾 hadoop fs -mkdir -p /user/hadoop,之後對資料夾進行許可權修改,hadoop fs -chmod -R 777 /user/hadoop,
    在本地建立一個wordplus.txt,輸入一些英文單詞,右擊eclipse DFS Locations進行檔案上傳

  7. 將hadoop-common-2.7.6-bin-master.zip解壓,把hadoop-common-2.7.6-bin-master下的bin全部複製放到我們下載的hadoop2.7.6的hadoop2.7.6/bin目錄下

  8. Hadoop2.7.6配置變數環境HADOOP_HOME 和path,如圖所示
    在這裡插入圖片描述
    在這裡插入圖片描述

  9. 將hadoop-common-2.7.6-bin-master下的bin的hadoop.dll放到C:\Windows\System32下,然後重啟電腦,否則會出現"main"java.lang.UnsatisfiedLinkError:org.apache.hadoop.io.nativeio.NativeIO$Windows.access0(Ljava/lang/String;I)Z錯誤

  10. 點選標題欄Run,通過Run Configurations進行配置如圖配置

在這裡插入圖片描述
11. 執行,點選output下part-r-00000檢視結果,如圖所示
在這裡插入圖片描述在這裡插入圖片描述