方禹潤++藺兵兵++齊浩亮++白旭峰
摘要: 本文在研究了 Map Reduce 算法基本原理及應(yīng)用的基礎(chǔ)上,針對當(dāng)前海量教學(xué)資源存儲的需求,應(yīng)用了一種基于云計算環(huán)境下優(yōu)化的Map Reduce計算模型,通過測試比較改進前后的 Map Reduce 算法模型數(shù)據(jù)處理性能,實驗證明了改進型 Map Reduce 算法模型提高了海量教學(xué)資源數(shù)據(jù)存儲模型的存儲能力和計算性能。
Abstract: Based on the study of the basic principle and application of Map Reduce algorithm, in view of the current storage requirements of massive teaching resources, an optimized Map Reduce computing model based on cloud computing environment is presented. Through test comparison of data processing performance of the improved Map Reduce algorithm, the experimental results show that the improved Map Reduce algorithm improves the storage capacity and computing performance of the storage model of massive teaching resources.
關(guān)鍵詞: 教學(xué)資源;存儲;Map Reduce
Key words: teaching resources;storage;Map Reduce
中圖分類號:TP391.3 文獻標(biāo)識碼:A 文章編號:1006-4311(2017)08-0247-02
1 教學(xué)資源
教學(xué)資源是指高校在教學(xué)信息化過程中為教學(xué)活動的必要電子材料。一般來說,教學(xué)資源是指在教學(xué)過程中教學(xué)的所有元素,這些主要包括支持教學(xué)的信息化數(shù)據(jù)以及在教學(xué)和服務(wù)教學(xué)的,資金,素材,信息等等。在本文中,教學(xué)資源主要是指教學(xué)或?qū)W習(xí)材料,包括媒體資源、試題庫、試卷、課件、在線課程等,可以幫助教師和學(xué)習(xí)者更好的利用教學(xué)以及學(xué)習(xí)知識的信息化數(shù)據(jù)。
2 Map Reduce的優(yōu)化
Map Reduce 算法框架首先是由Google 提出來的一個分布式計算體系結(jié)構(gòu),它能夠支持大型分布式海量數(shù)據(jù)處理和分析。這種架構(gòu)最初起源于兩個函數(shù)的map 和 reduce 函數(shù)式編程模式,但他們的應(yīng)用程序在最初的算法架構(gòu)以及原始模型當(dāng)中進行使用。一個典型的 Map/Reduce 過程一般有下列幾個階段,如圖1所示。
雖然 Map Reduce 算法對海量數(shù)據(jù)存儲以及處理方面的優(yōu)勢很大,但是針對高校的海量數(shù)據(jù)存儲的特點,以及當(dāng)前海量數(shù)據(jù)存儲的需求,Map Reduce 在處理數(shù)據(jù)的時候過于繁瑣,例如自動并行化數(shù)據(jù)處理、負(fù)載均衡以及設(shè)備資源的管理等都得占用計算機資源。
優(yōu)化的 Map Reduce 的生成方案中可以分為兩個部分,分別是第一次的 Map Reduce 算法計算以及第二次的 Map Reduce 分類存儲計算。在第一次的 Map Reduce 算法計算當(dāng)中,首先是把要上傳的數(shù)據(jù)通過 Map 函數(shù)的這個階段數(shù)據(jù)的索引詞頻率計算出來,然后輸出對應(yīng)的數(shù)據(jù)流當(dāng)中去,然后再通過 Reduce 函數(shù)來對相應(yīng)的數(shù)據(jù)流進行輸入,最后再來把計算好的數(shù)據(jù)記錄生成最終的數(shù)據(jù)記錄集合。這樣,在第二次Map Reduce計算的過程中,再通過對每個數(shù)據(jù)進行設(shè)計相應(yīng)的權(quán)重閾值作為權(quán)值,最后再來通過這個權(quán)值閥值來進行二次分類,從而提升數(shù)據(jù)的存儲能力以及大大提升訪問的速度。優(yōu)化的Map Reduce 算法模型如圖2所示。
3 測試分析
3.1 測試環(huán)境
所搭建環(huán)境具體需求如下:
①硬件環(huán)境:
Master(主節(jié)點)1 臺、Slave(子節(jié)點)3 臺。
②軟件環(huán)境:
操作系統(tǒng):Cent OS6.5,集群的主要軟件:Hadoop1.2.1、DK1.6.0_22、Vmwareworkstation 和 Eclipse3.2。
3.2 hadoop平臺搭建
采用四臺服務(wù)器來搭建 hadoop 集群并部署存儲模型進行功能、性能等測試,主節(jié)點服務(wù)器(master)的 IP 地址為:192.168.1.2(下面簡稱 master), 子節(jié)點 1:192.168.1.3(下面簡稱 slave1), 子節(jié)點 2:192.168.1.4 (下面簡稱 slave2),子節(jié)點 3:192.168.1.188 (下面簡稱 slave3),架構(gòu)規(guī)化如下:
master 作為 Name Node,Secondary Name Node,Job Tracker;
slave1、slave2 以及 slave3 用來作為 Data Node,Task Tracker。
3.3 實驗結(jié)果
由于實驗條件限制,在搭建 Hadoop 分布式集群的時候,選用一臺 PC 機用來作為 Name Node 主服務(wù)器,剩余 3 臺 PC 機用來作為子節(jié)點服務(wù)器,通過對 Linux 集群環(huán)境進行相關(guān)驗證。本次測試所用數(shù)據(jù)為 50G 的教學(xué)資源。實驗的內(nèi)容是:
3.3.1 不同數(shù)據(jù)塊大小處理速度測試
把所要測試文件按分割成不同大小的 Block 進行存儲,然后測試對于不同節(jié)點處理速度有什么影響,結(jié)果如表1所示。
3.3.2 應(yīng)用優(yōu)化Map Reduce算法的性能測試
在做這個測試之前,首先得對原始測試數(shù)據(jù)文件設(shè)置好相應(yīng)的文件權(quán)值,同時還要設(shè)置集群中的 Name Node 主節(jié)點數(shù)為 1 個,Data Node 數(shù)據(jù)節(jié)點為 3個,Job 子任務(wù)數(shù)為 10 個,然后運行并通過測試對應(yīng)用 Map Reduce 算法改進前后的執(zhí)行速度進行比較并記錄,然后通過分析得出測試結(jié)果比較改進前后的優(yōu)勢和劣勢,具體的結(jié)果如表3所示。
從表3的測試結(jié)果可以說明,在 Hadoop 集群當(dāng)中,應(yīng)用基于改進型的Map Reduce 算法模型可以明顯提升數(shù)據(jù)訪問的速度以及處理性能。通過這個測試可以說明,基于改進型的 Map Reduce 算法在基于云計算環(huán)境下的高校海量數(shù)據(jù)存儲模型中的應(yīng)用是成功的,使用這種改進型的算法可以提升存儲模型的訪問速度以及數(shù)據(jù)處理性能。
4 結(jié)束語
本文主要針對分布式存儲模型和關(guān)鍵技術(shù)進行了研究,利用Hadoop的HDFS有效解決了當(dāng)前高校對于海量教學(xué)資源存儲的難題,通過對Map Reduce算法的優(yōu)化有效地提高海量數(shù)據(jù)處理速度,以及對規(guī)則計算實驗結(jié)果的分析證明了開始的設(shè)想,實現(xiàn)期待的目標(biāo)。
參考文獻:
[1]鐘小彬.中國視頻公開課發(fā)展現(xiàn)狀、問題及對策[J].電子測試,2013(3):224-225.
[2]袁正午,等.云計算應(yīng)用現(xiàn)狀與趨勢[J].數(shù)字通信,2010(3).
[3]謝桂蘭,羅省賢.基于Hadoop MapReduce模型的應(yīng)用研究[J].微型機與應(yīng)用,2010(8):4-7.