標籤:

Hadoop介紹:實現第一個MapReduce程序for mac

本文所有流程、代碼均在mac 10.13.2系統版本下測試通過。

1.下載並安裝Cloudera VM和VirtualBox

安裝VirtualBox

下載地址:virtualbox.org/wiki/Dow

也可以直接下載本文使用的版本 VirtualBox 5.1 builds

下載Cloudera VM

Cloudera集成了hadoop生態環境中的大部分常用框架。

點擊下面的鏈接安裝:downloads.cloudera.com/.

該程序大約4GB。下載後請解壓

導入程序

打開VirtualBox,點擊菜單欄File-> Import Appliance,然後點擊文件夾圖標

選擇解壓縮後的Cloudera文件『cloudera-quickstart-vm-5.4.2-0-virtualbox.ovf』,然後一直點擊繼續。

啟動Cloudera VM

當導入程序完成後,點擊綠色Start按鈕:

啟動完成後進入桌面

2. 複製文件到HDFS

打開瀏覽器,輸入網址ocw.mit.edu/ans7870/6/6

點擊菜單按鈕下的Save Page,將文件保存在Downloads文件夾,文件名為words.txt

打開terminal

點擊桌面菜單欄的黑色圖標打開terminal

輸入命令進入Downloads文件夾:cd Downloads

輸入ls確認words.txt文件存在:ls

拷貝文件

拷貝命令:hadoop fs –copyFromLocal words.txt

確認文件拷貝成功:hadoop fs –ls

HDFS文件拷貝

命令:hadoop fs -cp words.txt words2.txt

查看:hadoop fs -ls

拷貝文件到本地

命令:hadoop fs -copyToLocal words2.txt

查看:ls

刪除HDFS內的文件

命令:hadoop fs -rm words2.txt

查看:hadoop fs -ls

3. 運行第一個Hadoop程序:WordCount

該程序實現的功能是計算文件中單詞出現的次數。

查看示常式序

虛擬機中打開terminal,執行命令:hadoop jar /usr/jars/hadoop-examples.jar

結果中列出了所有示常式序,其中包括我們要使用的wordcount程序

查看程序參數

執行命令:hadoop jar /usr/jars/hadoop-examples.jar wordcount

結果列出了該程序的參數,可以有一個或多個輸入,得到一個輸出。

執行程序

運行:hadoop jar /usr/jars/hadoop-examples.jar wordcount words.txt out

我們以之前下載的word.txt文件作為輸入

得到輸出文件out

等待map和reduce分別執行到100%即運行完成。

查看結果

運行:hadoop fs –ls

我們發現HDFS中多了一個文件夾out

進入文件件hadoop –fs ls out

文件『part-r-00000』包含了程序運行的結果

我們首先將文件拷貝到本地hadoop fs –copyToLocal out/part-r-00000 local.txt

運行以下命令查看結果:more local.txt

我們看到文件中記錄了所有單詞出現的次數!

至此,第一個MapReduce程序運行完成。


推薦閱讀:

hadoop web管理Hue,Ambari 和CM 的區別是什麼?
哪裡有 hadoop 教程下載?
Hadoop和Spark的異同
Apache Hadoop mapreduce 的Shuffle過程詳解
技術分享丨HDFS 入門

TAG:Hadoop | MapReduce |