Hadoop介紹:實現第一個MapReduce程序for mac
本文所有流程、代碼均在mac 10.13.2系統版本下測試通過。
1.下載並安裝Cloudera VM和VirtualBox
安裝VirtualBox
下載地址:https://www.virtualbox.org/wiki/Downloads
也可以直接下載本文使用的版本 VirtualBox 5.1 builds
下載Cloudera VM
Cloudera集成了hadoop生態環境中的大部分常用框架。
點擊下面的鏈接安裝:https://downloads.cloudera.com/demo_vm/virtualbox/cloudera-quickstart-vm-5.4.2-0-virtualbox.zip.該程序大約4GB。下載後請解壓
導入程序
打開VirtualBox,點擊菜單欄File-> Import Appliance,然後點擊文件夾圖標
選擇解壓縮後的Cloudera文件『cloudera-quickstart-vm-5.4.2-0-virtualbox.ovf』,然後一直點擊繼續。
啟動Cloudera VM
當導入程序完成後,點擊綠色Start按鈕:
啟動完成後進入桌面
2. 複製文件到HDFS
打開瀏覽器,輸入網址http://ocw.mit.edu/ans7870/6/6.006/s08/lecturenotes/files/t8.shakespeare.txt
點擊菜單按鈕下的Save Page,將文件保存在Downloads文件夾,文件名為words.txt
打開terminal
點擊桌面菜單欄的黑色圖標打開terminal
輸入命令進入Downloads文件夾:cd Downloads
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
查看程序參數
執行命令: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
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 入門