資源描述:
《Hadoop介紹與部署》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、Hadoop介紹與部署1、Hadoop介紹12、部署步驟21、Hadoop介紹分布式計算最重要的一個設(shè)計點:MovingComputationisCheaperthanMovingData。就是在分布式處理中,移動數(shù)據(jù)的代價總是高于轉(zhuǎn)移計算的代價。簡單來說就是分而治之的工作,需要將數(shù)據(jù)也分而存儲,本地任務(wù)處理本地數(shù)據(jù)然后歸總,這樣才會保證分布式計算的高效性。Hadoop是Apache開源組織的一個分布式計算開源框架。分布式計算中具體的計算任務(wù)交由哪一臺機器執(zhí)行,執(zhí)行后由誰來匯總,這都由分布式框架的Master來抉擇,而使用者只需簡單地將待分析內(nèi)容提供給分布式計算系統(tǒng)作為輸入,就可以得到分
2、布式計算后的結(jié)果。Hadoop框架中最核心的設(shè)計就是:MapReduce和HDFS,一句話解釋MapReduce就是“任務(wù)的分解與結(jié)果的匯總”;HDFS是Hadoop分布式文件系統(tǒng)(HadoopDistributedFileSystem)的縮寫,為分布式計算存儲提供了底層支持。MapReduce從它名字上來看就大致可以看出個緣由,兩個動詞Map和Reduce,“Map(展開)”就是將一個任務(wù)分解成為多個任務(wù),“Reduce”就是將分解后多任務(wù)處理的結(jié)果匯總起來,得出最后的分析結(jié)果。在程序設(shè)計中,一項工作往往可以被拆分成為多個任務(wù),任務(wù)之間的關(guān)系可以分為兩種:一種是不相關(guān)的任務(wù),可以并行執(zhí)
3、行;另一種是任務(wù)之間有相互的依賴,先后順序不能夠顛倒,這類任務(wù)是無法并行處理的。任務(wù)分解處理以后,那就需要將處理以后的結(jié)果再匯總起來,這就是Reduce要做的工作。1、部署步驟1.在所有的機器上都建立相同的目錄,也可以就建立相同的用戶,以該用戶的home路徑來做hadoop的安裝路徑。例如我在所有的機器上都建立了/home/wenchu。2.下載Hadoop,先解壓到Master上。這里我是下載的0.17.1的版本。此時Hadoop的安裝路徑就是/home/wenchu/hadoop-0.17.1。3.解壓后進入conf目錄,主要需要修改以下文件:hadoop-env.sh,hadoop
4、-site.xml、masters、slaves。Hadoop的基礎(chǔ)配置文件是hadoop-default.xml,看Hadoop的代碼可以知道,默認(rèn)建立一個Job的時候會建立Job的Config,Config首先讀入hadoop-default.xml的配置,然后再讀入hadoop-site.xml的配置(這個文件初始的時候配置為空),hadoop-site.xml中主要配置你需要覆蓋的hadoop-default.xml的系統(tǒng)級配置,以及你需要在你的MapReduce過程中使用的自定義配置(具體的一些使用例如final等參考文檔)。以下是一個簡單的hadoop-site.xml的配置
5、:fs.default.name//你的namenode的配置,機器名加端口hdfs://10.2.224.46:54310/mapred.job.tracker/
6、/你的JobTracker的配置,機器名加端口hdfs://10.2.224.46:54311/dfs.replication//數(shù)據(jù)需要備份的數(shù)量,默認(rèn)是三1hadoop.tmp.dir//Hadoop的默認(rèn)臨時路徑,這個最好配置,如果在新增節(jié)點或者其他情況下莫名其妙的DataNode啟動不了,就刪除此文件中的tmp目錄即可。不過如果刪除了NameNode機器的此目錄,那么就需要重新執(zhí)行Nam
7、eNode格式化的命令。/home/wenchu/hadoop/tmp/mapred.child.java.opts//java虛擬機的一些參數(shù)可參照配置-Xmx512mdfs.block.size//block的大小,單位字節(jié),后面會提到