國標 丁帥男 吳雨桐
【摘 要】近幾年,云計算產業飛速發展,大數據處理技術也在不斷成熟。與此同時,國內移動互聯網市場規模不斷擴大,用戶數量己經超過5億,并帶來了海量的移動互聯網流量數據。在此背景下,如何基于云計算大數據處理技術來承載海量網絡數據處理業務,是一個非常有研究價值的課題。
【關鍵詞】流量數據;Hadoop;數據處理
一、MapReduce分布式處理技術
Hadoop平臺的MapReduce框架采用主從架構,由一個JobTracker主節點和多個TaskTracker從節點構成。JobTracker模塊負責MapReduce作業的調度,包括分配用戶提交的作業執行順序、Map任務和Reduce任務的分配和執行,推測性任務的執行等,從節點中TaskTracker模塊負責處理主節點指派的任務,包括執行Map任務、Reduce任務和推測性任務。MapReduce框架運行流程如下。
(一)用戶提交作業。用戶編寫自己的MapReduce程序并在客戶端節點上運行,作業客戶端實例化后,向JobTracke:模塊提交該作業信息,申請分配作業的ID號。然后作業客戶端在驗證本次作業相關信V、無誤的情況下,將作業資源存放到分布式文件系統中,默認情況下,Hadoop使用HDFS作為其文件存儲系統。最后客戶端向JobTracker模塊提交作業執行請求。
(二)JobTracker初始化用戶作業。JobTracker收到用戶提交的作業后,創建該作業實例對象并配置相關數據,包括該作業使用的Jar包存放位置、輸入數據分塊信J自、以及作業對應的配置文件信息、等等。然后JobTracker根據其配置的一調度算法(默認為先進先出調度算法)將該作業放入其作業對待,用于后續分配。
(三)任務分配。當前MapReduce的機制中使用心跳通信機制來進行任務分配。即從節點中的TaskTracke:模塊定時向.lobTracker發送心跳通信,JobTracker的作業隊列若有待分配的作業,則其根據收到的信息、決定是否向該TaskTracker分配任務。當從節點上TaskTracker模塊的Map任務槽有空閑時,JobTracker節點根據感知策略向該節點分配合適的Map任務。需要說明的是,JobTracker在分配任務時,優先往TaskTracker分配Map任務,只有在TaskTracker模塊上Map任務槽無空閑時才分配Reduce任務。
(四)TaskTracker執行Map任務。TaskTracker在執行Map或者Reduce任務時,每執行一個任務均會啟動一個Java子進程來運行該任務。當啟動子進程之前,TaskTracker模塊首先從HDFS中讀取該作業客戶端之前存放的作業相關信息,然后再創建一個Java子進程來執行用戶自己編寫的Map任務。Map任務運行后會定期輸出數據緩存在內存中。當緩存數據超過指定限額時,Map任務會將數據緩存到該從節點的磁盤中。
(五)TaskTracke:執行Reduce任務。當有Map任務執行完畢,同時有TaskTracker模塊存在空閑Reduce槽的情況下,當該TaskTracker從節點與JobTracker通信時,JobTracker會分配該作業對應的Reduce任務給該從節點。需要說明的是,由于Reduce任務的輸入數據來源于各個Map任務的輸出,沒有本地數據的概念,因此JobTracker直接分配隊列中的Reduce任務即可。Reduce任務運行時,首先從對應的Map任務所在的節點讀取中間數據。當Reduce任務得到其所需的數據后開始執行用戶編寫的Reduce任務程序。Reduce任務運行時,
將其輸出結果存放到HDFS中。
(六)完成一次作業運行。Reduce任務全部完成后,輸出結果根據用戶指定的目錄存放。JobTracker根據各個TaskTracker發送的心跳信息知道該作業已經運行完畢,設置該作業的完成標記,同時向作業客戶端發送作業完成的通知和相關統計數據。需要說明的是,在作業運行期間,用戶客戶端從持續收到作業運行的進度信息。
二、結語
本章節介紹了在當前移動互聯網及其引發的網絡業務快速增長的現狀下,本文使用Hadoop技術來進行網絡流量數據處理的必要性。并對基于Hadoop的海量網絡數據處理平臺的總體架構,以及該平臺所使用的數據采集和傳輸技術,基于HDFS的海量網絡數據存儲技術和基于MapReduce的海量數據處理技術等關鍵技術進行了詳細介紹。此外,本章節對海量網絡數據處理平臺當前需要重點解決的技術問題進行了詳細分析。從而為本文后續開展的研究工作進行了鋪墊,打下良好的基礎。
【參考文獻】
[1]劉軍,Hadoop大數據處理人民郵電出版社,2013
[2]趙衛中,馬慧芳,傅燕翔等,基于云計算平臺Hadoop的并行K-Mean聚類算法設計研
究,計算機科學,38(10) 2011, 166-168
[3]Xue S J, Pan W B, Fang W, A Novel Approach in Improving I/O Performance of SrnallMeteorological Files on HDFS, Applied Mechanics and Materials, 1172012 1759-1765.
[4]Yazd S A, Venkatesan S, Mittal N, Energy Efficient Hadoop Using MirroredReplication Policy, Reliable Distributed Systems (SRDS), 2012 IEEE 31st Symposium on:457-462.Data BlockIEEE, 2012