Hadoop包含兩個部分:
1.Hadoop Distributed File System (Hadoop分布式文件系統(tǒng))
HDFS具有高容錯性枕面,并且可以被部署在低價的硬件設備之上帘撰。HDFS很適合那些有大數(shù)據(jù)集的應用挟纱,并且提供了對數(shù)據(jù)讀寫的高吞吐率闲先。HDFS是一個master/slave的結(jié)構(gòu)状土,就通常的部署來說,在master上只運行一個Namenode饵蒂,而在每一個slave上運行一個Datanode声诸。
HDFS支持傳統(tǒng)的層次文件組織結(jié)構(gòu),同現(xiàn)有的一些文件系統(tǒng)在操作上很類似退盯,比如你可以創(chuàng)建和刪除一個文件彼乌,把一個文件從一個目錄移到另一個目錄,重命名等等操作渊迁。Namenode管理著整個分布式文件系統(tǒng)慰照,對文件系統(tǒng)的操作(如建立、刪除文件和文件夾)都是通過Namenode來控制琉朽。
2毒租、MapReduce的實現(xiàn)
MapReduce是Google 的一項重要技術,它是一個編程模型箱叁,用以進行大數(shù)據(jù)量的計算墅垮。對于大數(shù)據(jù)量的計算,通常采用的處理手法就是并行計算耕漱。至少現(xiàn)階段而言算色,對許多開發(fā)人員來說,并行計算還是一個比較遙遠的東西螟够。MapReduce就是一種簡化并行計算的編程模型灾梦,它讓那些沒有多少并行計算經(jīng)驗的開發(fā)人員也可以開發(fā)并行應用。
MapReduce的名字源于這個模型中的兩項核心操作:Map和 Reduce妓笙。簡單的說來若河,Map是把一組數(shù)據(jù)一對一的映射為另外的一組數(shù)據(jù),其映射的規(guī)則由一個函數(shù)來指定寞宫,比如對[1, 2, 3, 4]進行乘2的映射就變成了[2, 4, 6, 8]萧福。Reduce是對一組數(shù)據(jù)進行歸約,這個歸約的規(guī)則由一個函數(shù)指定淆九,比如對[1, 2, 3, 4]進行求和的歸約得到結(jié)果是10统锤,而對它進行求積的歸約結(jié)果是24。
在這里我還是要推薦下我自己建的大數(shù)據(jù)學習交流qq裙:788483959 (大數(shù)據(jù)資料分享)炭庙, 裙 里都是學大數(shù)據(jù)開發(fā)的饲窿,如果你正在學習大數(shù)據(jù) ,小編歡迎你加入焕蹄,大家都是軟件開發(fā)黨逾雄,不定期分享干貨(只有大數(shù)據(jù)開發(fā)相關的),包括我自己整理的一份最新的大數(shù)據(jù)進階資料和高級開發(fā)教程,歡迎進階中和進想深入大數(shù)據(jù)的小伙伴鸦泳。大數(shù)據(jù)開發(fā)银锻、數(shù)據(jù)分析與挖掘線上教學,免費試聽做鹰!