資源描述:
《hadoop入門實(shí)戰(zhàn)手冊》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、北京寬連十方數(shù)字技術(shù)有限公司公開內(nèi)部公開√機(jī)密絕密Hadoop入門實(shí)戰(zhàn)手冊北京寬連十方數(shù)字技術(shù)有限公司技術(shù)研究部(2011年7月)北京寬連十方數(shù)字技術(shù)有限公司公開內(nèi)部公開√機(jī)密絕密目錄1概述41.1什么是Hadoop?41.2為什么要選擇Hadoop?51.2.1系統(tǒng)特點(diǎn)51.2.2使用場景52術(shù)語53Hadoop的單機(jī)部署63.1目的63.2先決條件63.2.1支持平臺63.2.2所需軟件63.2.3安裝軟件73.3下載73.4運(yùn)行Hadoop集群的準(zhǔn)備工作73.5單機(jī)模式的操作方法73.6偽分布式模式的操作方法83
2、.6.1配置83.6.2免密碼ssh設(shè)置93.6.3執(zhí)行94Hadoop集群搭建過程手記124.1免密碼SSH設(shè)置124.2Hadoop軟件安裝124.3Master(85)配置134.4Slave(60,245上)配置144.5初始化和啟動hadoop集群154.5.1初始化文件系統(tǒng)154.5.2啟動Hadoop154.5.3停止Hadoop174.6測試174.7管理界面與命令194.7.1hdfs運(yùn)行狀態(tài)界面194.7.2Map-reduce的運(yùn)行狀態(tài)界面204.7.3直接的命令行查看204.7.1運(yùn)行的進(jìn)程查看
3、215架構(gòu)分析235.1HDFS235.1.1HDFS的三個重要角色245.1.2HDFS設(shè)計(jì)特點(diǎn)255.2MapReduce265.2.1算法介紹26北京寬連十方數(shù)字技術(shù)有限公司公開內(nèi)部公開√機(jī)密絕密5.2.2Hadoop框架下的mapreduce285.3綜合架構(gòu)分析296Hadoop的應(yīng)用317系統(tǒng)維護(hù)317.1Hadoop的系統(tǒng)監(jiān)控317.2Hadoop中的命令(Command)總結(jié)327.3NameNode與JobTracker單點(diǎn)故障說明327.4經(jīng)驗(yàn)總結(jié)327.5如何在一個hadoop集群新增或刪除一些機(jī)
4、器而不重啟337.5.1新增節(jié)點(diǎn)337.5.2刪除節(jié)點(diǎn)347.6其它日常問題說明367.6.1datanode啟動失敗,各slave節(jié)點(diǎn)的namespaceIDs與masters不同367.6.2taskTracker和jobTracker啟動失敗377.6.3ShuffleError:ExceededMAX_FAILED_UNIQUE_FETCHES;bailing-out377.6.4Toomanyfetch-failures387.6.5能夠啟動datanode,但無法訪問,也無法結(jié)束的錯誤387.6.6java
5、.io.IOException:Couldnotobtainblock:387.6.7java.lang.OutOfMemoryError:?Java?heapspace387.6.8解決hadoopOutOfMemoryError問題:397.6.9Hadoopjava.io.IOException:397.7防火墻的端口開放要求397.7.1與HDFS有關(guān)的地址及端口屬性397.7.2與MapReduce?有關(guān)的地址及端口屬性418附錄428.1hadoop歷史428.2Hadoop大記事438.3Hadoop的幾
6、個主要子項(xiàng)目448.4官方集群搭建參考448.4.1配置文件448.4.2集群配置說明44北京寬連十方數(shù)字技術(shù)有限公司公開內(nèi)部公開√機(jī)密絕密1概述作什么事情之前,第一步是要知道What(是什么),然后是Why(為什么),最后才是How(怎么做)。避免將技術(shù)誤用于不適合的場景,這一點(diǎn)非常重要。1.1什么是Hadoop?Hadoop由ApacheSoftwareFoundation公司于2005年秋天作為Lucene的子項(xiàng)目Nutch的一部分正式引入。它受到最先由GoogleLab開發(fā)的MapReduce和GoogleFi
7、leSystem的啟發(fā)。2006年3月份,MapReduce和NutchDistributedFileSystem(NDFS)分別被納入稱為Hadoop的項(xiàng)目中。Hadoop并不僅僅是一個用于存儲的分布式文件系統(tǒng),而是設(shè)計(jì)用來在由通用計(jì)算設(shè)備組成的大型集群上執(zhí)行分布式應(yīng)用的基礎(chǔ)框架。它由Apache基金會開發(fā)。用戶可以在不了解分布式底層細(xì)節(jié)的情況下,開發(fā)分布式程序。充分利用集群的威力高速運(yùn)算和存儲。簡單地說來,Hadoop是一個可以更容易開發(fā)和運(yùn)行處理大規(guī)模數(shù)據(jù)的軟件平臺。下圖是Hadoop的體系結(jié)構(gòu):Hadoop框架
8、中最核心的設(shè)計(jì)就是:MapReduce和HDFS。1)MapReduce的思想是由Google的一篇論文所提及而被廣為流傳的,簡單的一句話解釋MapReduce就是“任務(wù)的分解與結(jié)果的匯總”。2)HDFS是Hadoop分布式文件系統(tǒng)(HadoopDistributedFileSystem)的縮寫,為分布式計(jì)算存儲提供了底層支持。1