贠佩 晁玉蓉 樊華 崔超飛 陳偉



摘要:Hadoop是一個分布式開源計算平臺,它以分布式文件系統(tǒng)HDFS和MapReduce為核心,為用戶提供系統(tǒng)底層細節(jié)透明的分布式基礎架構。HDFS為分布式文件系統(tǒng)提供存儲環(huán)境,而MapReduce為分布式數(shù)據(jù)提供運算環(huán)境。其特點是高可靠性、高擴展性、高效性、高容錯性。
關鍵詞:Hadoop;HDFS;MapReduce
中圖分類號:TP311.13 文獻標識碼:A 文章編號:1007-9416(2019)03-0180-01
在巨量數(shù)據(jù)中,迅捷、快速地從數(shù)據(jù)中挖掘出有價值的信息并將其轉(zhuǎn)化為決策的依據(jù),將成為企業(yè)未來依據(jù)的關鍵因素。數(shù)據(jù)分析的重要性不言而喻,但隨著數(shù)據(jù)量的突飛猛進,數(shù)據(jù)處理中遇到難題也更加突出。如何從巨大的數(shù)據(jù)中提取有價值的信息,并分析深層寓意,進而實現(xiàn)可行性,已經(jīng)成為互聯(lián)網(wǎng)處理的重要問題。
1 Hadoop
Hadoop是一個可靠的分布式共享存儲系統(tǒng),HDFS用于數(shù)據(jù)的存儲,MapReduce用于數(shù)據(jù)分析和處理。HDFS運行于集群之上,以流式數(shù)據(jù)存儲超大文件;MapReduce是分布式數(shù)據(jù)處理模型和運行環(huán)境。
1.1 HDFS架構
HDFS的框架采用主從架構,是由一個NameNode和多個DataNode組成。NameNode是中心節(jié)點,負責對客戶端文件的訪問和文件名字空間的管理。DataNode是一般節(jié)點,負責處理文件系統(tǒng)客戶端的讀寫請求和管理節(jié)點上的存儲,結(jié)構圖如圖1所示。
1.2 MapReduce架構
MapReduce包括一個主節(jié)點,多個子節(jié)點共同組成。客戶程序負責輸入/輸出,通過抽象的接口實現(xiàn)map和reduce,與其他參數(shù)共同構成整體配置。應用MapReduce的程序能夠運行在大型商用機集群,提供可靠容錯的并行處理級別的數(shù)據(jù),結(jié)構圖如圖2所示。
2 Hadoop數(shù)據(jù)分析系統(tǒng)的設計
采用實時Scribe收集各個Datenode節(jié)點上數(shù)據(jù),數(shù)據(jù)采集完畢后,寫入到分布式HDFS,HDFS以流式數(shù)據(jù)的訪問模式存儲超大文件,MapReduce計算分析數(shù)據(jù)且HDFS以MapReduce提供底層文件系統(tǒng)的支撐。處理步驟如下:
(1)根據(jù)輸入數(shù)據(jù)的鍵值對,傳送到Mapper類的map函數(shù)。(2)map輸出鍵值對到緩沖內(nèi)存。(3)Reduce獲取Mapper記錄,產(chǎn)生另外鍵值對,輸出到HDFS中。
數(shù)據(jù)分析任務由集群來進行計算,將產(chǎn)生結(jié)果存入HBase進行可視化展示,由web服務器采用相應的接口進行調(diào)用,采用由Thrift的接口對HBase進行訪問。
整個數(shù)據(jù)分析系統(tǒng)分別由數(shù)據(jù)收集模塊,Hadoop模塊、HBase模塊和報警模塊來構成,具體結(jié)構如圖3所示。
3 結(jié)語
根據(jù)海量數(shù)據(jù)處理中的問題,設計了基于Hadoop數(shù)據(jù)分析系統(tǒng)。系統(tǒng)從底層數(shù)據(jù)采集、數(shù)據(jù)存儲和計算、數(shù)據(jù)分析、系統(tǒng)監(jiān)控等方面提供對Scirbe和Hadoop集群指標(IO、Load)實時監(jiān)控的執(zhí)行,減輕了集群人員的壓力。
參考文獻
[1] Tom Wbite著.Hadoop權威指南[M].清華大學出版社,2011.
[2] 朱珠.基于Hadoop的海量數(shù)據(jù)處理模型的研究和應用[D].北京:北京郵電大學圖書館,2007.
[3] 張華強.關系型數(shù)據(jù)庫與NoSQL數(shù)據(jù)庫[J].電腦知識與技術,2011,7(20):4802-4804.
[4] 許春玲,張廣泉.分布式文件系統(tǒng)Hadoop HDFS與傳統(tǒng)文件系統(tǒng)Linux FS的比較分析[J].蘇州大學學報,2010,30(4):5-9+19.
[5] 張建勛,古志民.云計算研究進展綜述[J].計算機應用研究,2010,27(2):429-433.
[6] 范波.基于MapReduce的結(jié)構化查詢機制的設計與實現(xiàn)[D].成都:電子科技大學圖書館,2011.
Data Analysis System Based on Hadoop
YUN Pei,CHAO Yu-rong,F(xiàn)AN Hua,CUI Chao-fei,CHEN Wei
(Xianyang Normal University,Xianyang Shaanxi? 712000)
Abstract:Hadoop is actually a concrete implementation of a distributed file system. The core design of Hadoop's architecture is HDFS and MapReduce. HDFS provides storage for massive data, while MapReduce provides computation for massive data. HDFS features high fault tolerance, high throughput, large data sets and low hardware cost.
Key words:Hadoop; HDFS;MapReduce