顏 燁,張學文,王立婧
(1.重慶大學城市科技學院 電氣信息學院,重慶 402167;2.北華大學 機械工程學院,吉林 吉林 132021;3.重慶大學城市科技學院 人文學院,重慶 402167)
混合云服務模式兼具公有云模式計算資源充足以及私有云安全隱私性好的雙重技術優(yōu)點[1]。在混合云服務模式下運行諸如大數(shù)據(jù)分析等數(shù)據(jù)密集型業(yè)務,用戶可靈活地選擇涉及關鍵數(shù)據(jù)和敏感數(shù)據(jù)的應用程序運行于私有云平臺上,而其它的應用程序則跨越公有云和私有云服務[2,3]。然而,跨平臺數(shù)據(jù)遷移將會帶來執(zhí)行性能(如時間、物理開銷)的下降。因此,研究混合云模式下諸如數(shù)據(jù)密集型業(yè)務的數(shù)據(jù)存儲與遷移以及執(zhí)行性能預測與分析具有重要意義。
文獻[4]提出一種基于混合云的可擴展視頻編碼視頻直播存儲及調度機制,但文中未涉及大數(shù)據(jù)分析相關內容。文獻[5]提出了混合云存儲架構下的大數(shù)據(jù)遷移策略,但僅關注了大數(shù)據(jù)的存儲機制與數(shù)據(jù)訪問速度提升,對大數(shù)據(jù)分析與存儲交互機制未做探討。文獻[6]設計了一種新型混合云平臺以滿足變電設備監(jiān)測大數(shù)據(jù)分析的多樣化實時需求,但未分析應用層數(shù)據(jù)分析與存儲層實時交互耦合影響,且未考慮任務的時間成本。
MapReduce作為一種面向數(shù)據(jù)處理的編程框架[7],在混合云框架下迭代MapReduce應用程序,可利用其輸入數(shù)據(jù)不變的特點節(jié)省數(shù)據(jù)存儲開銷。然而,考慮到數(shù)據(jù)遷移操作的初始開銷很高[8],有必要提出一種有效的數(shù)據(jù)存儲方案。此外,鑒于用戶提交數(shù)據(jù)至混合云平臺進行大數(shù)據(jù)分析時必須對運行經(jīng)濟成本與數(shù)據(jù)分析目標成本的權衡[9],故在進行混合云平臺上的大數(shù)據(jù)分析之前,必須對待處理的目標問題進行計算資源與計算時間的準確預測。
基于上述分析,提出一種混合云框架下基于迭代Map-Reduce 應用程序的大數(shù)據(jù)分析實現(xiàn)方法。主要創(chuàng)新點為:
(1)傳統(tǒng)方案在每次迭代中都進行數(shù)據(jù)遷移操作,提出的方案在初次迭代過程中首先將輸入不變量遷移到公有云中,雖然增加了初始迭代過程的物理開銷,但在后續(xù)迭代計算過程中可有效節(jié)約數(shù)據(jù)遷移操作的時間,此外,無需對MapReduce框架或底層存儲層進行修改,故而降低了技術難度;
(2)基于隨機森林算法,提出了大數(shù)據(jù)分析性能預測方法,準確預測混合云平臺上運行大數(shù)據(jù)分析過程中包括數(shù)據(jù)遷移與數(shù)據(jù)計算所需的時間。
MapReduce應用程序中的數(shù)據(jù)存在高度的并發(fā)特性[10]。表現(xiàn)在:①大數(shù)據(jù)在映射階段以并行方式轉換為多個子數(shù)據(jù)集;②多個子數(shù)據(jù)集的處理結果在匯總(reduce)階段以并行方式進行匯聚。因此,MapReduce應用程序要求在映射階段大量并發(fā)地讀取數(shù)據(jù),而在匯總階段則大量并發(fā)地寫入數(shù)據(jù),故要求底層數(shù)據(jù)存儲層支持高度并發(fā)的I/O訪問模式。
然而,混合云平臺一般采用分布式文件系統(tǒng)(Hadoop distributed file system,HDFS)[11]進行數(shù)據(jù)存儲,但直接使用與MapReduce無交互機制的傳統(tǒng)分布式文件系統(tǒng)進行數(shù)據(jù)存儲于讀取將會產(chǎn)生大量的網(wǎng)絡通信數(shù)據(jù)流量,不足以發(fā)揮分布式文件系統(tǒng)的技術優(yōu)勢。原因在于:①傳統(tǒng)混合云設置中,數(shù)據(jù)初始存儲在內部私有云中。因此,當外部公有云通過設置虛擬機運行應用程序時,首先需從私有云的虛擬機獲取并寫入數(shù)據(jù);②私有云與公有云間的通信鏈路一般容量是有限的。因此,混合云服務模式下,外部虛擬機與內部虛擬機的通信比所有位于同一個云中的虛擬機間通信相比,其更易受到通信鏈路傳輸能力的制約。因此,在混合云平臺上運行MapReduce的關鍵在于提高數(shù)據(jù)存儲與讀取的性能。
在混合云平臺上運行MapReduce迭代程序時,有兩個重要的環(huán)節(jié):①數(shù)據(jù)存儲與遷移;②性能預測評估。本節(jié)將數(shù)據(jù)存儲遷移操作與大數(shù)據(jù)迭代分析算法步驟有機結合起來,提出一種混合云大數(shù)據(jù)分析實現(xiàn)方法,并提出了混合云平臺下大數(shù)據(jù)迭代計算的性能預測通用方法。
由于對于大數(shù)據(jù)分析這類需要重復迭代運行的應用程序而言,后續(xù)迭代過程中需要重復利用第一次迭代所需的大部分輸入數(shù)據(jù),這部分數(shù)據(jù)稱為不變量。因此,外部公有云的虛擬機通過傳輸能力有限的通信鏈路重復讀取來自內部虛擬機的輸入數(shù)據(jù)會嚴重占用通信資源;而對于隨迭代過程而改變的數(shù)據(jù),外部虛擬機則需要不斷的將數(shù)據(jù)通過通信鏈路寫入內部虛擬機,在后續(xù)迭代過程中再通過通信鏈路讀回數(shù)據(jù)。
此外,簡單地將不變數(shù)據(jù)和迭代后新寫入的數(shù)據(jù)直接存儲在外部公有云的虛擬機中以提高訪問速度并節(jié)約通信資源無法真正和MapReduce應用程序相匹配。這是由于MapReduce中任務調度機制優(yōu)先調度內部虛擬機中的數(shù)據(jù)資源,這將導致外部虛擬機資源的利用率不足。此外,調度機制的首要目標是平衡虛擬機負載[12],故上述數(shù)據(jù)存儲方案與調度機制相沖突。
通過上述分析,在無需對MapReduce框架和底層存儲層改進的基礎上,提出一種基于HDFS機架感知[13]的新型數(shù)據(jù)存儲方案。如圖1所示,具體內容為,對于混合云的虛擬機配置,創(chuàng)建兩個邏輯組分別用于部署內部私有云虛擬機和外部公有云虛擬機。當配置新的外部公有云虛擬機以提高內部私有云虛擬機計算能力時,通過機架感知的方式在外部公有云虛擬機上擴展HDFS部署。換言之,當非本地私有云虛擬機寫入一個新的數(shù)據(jù)塊時,實際上會同時創(chuàng)建本地副本和至少一個遠程副本,從而實現(xiàn)彈性的數(shù)據(jù)存儲。而非本地私有云虛擬機則可以根據(jù)實際問題需要簡單的終止,由于在本地私有云虛擬機中已有數(shù)據(jù)副本,故無需將遠程副本傳輸回本地。
圖1 所提數(shù)據(jù)存儲遷移策略
考慮到經(jīng)濟成本與時間成本,往往使用不同的云服務模式完成大數(shù)據(jù)分析。因此,混合云平臺應當在用戶提交數(shù)據(jù)與目標問題以確定所需的虛擬機配置之前,向用戶給出預計的計算資源與計算時間?;谏鲜霰尘埃岢鋈缦滦阅茴A測方法。
2.2.1 問題假設
設初始階段,MapReduce應用部署在N個內部私有云虛擬機上,且所有的初始不變數(shù)據(jù)均是分布存儲的。當有M個外部公有云虛擬機擴展以支撐N個內部虛擬機進行大數(shù)據(jù)分析任務時,使用2.1節(jié)所提機架感知策略重新擴展部署MapReduce應用,并在生成的混合云平臺上迭代基于MapReduce的大數(shù)據(jù)分析應用程序。為便于分析,設內部虛擬機與外部虛擬機的配置能力相同,且用戶可以追溯應用程序的歷史狀態(tài)或有權限知曉如下MapReduce的性能指標:①映射(map)/匯總(reduce)任務的總數(shù)量,記為PM和PR;②執(zhí)行map/reduce任務的物理槽位數(shù)量,記為kM和kR;③平均執(zhí)行map,reduce和調度任務的時間,記為(AM,AR,AS);④每次執(zhí)行map,reduce和調度任務的平均調度數(shù)據(jù)量,記為(DM,DR,DS)。
此外,設大數(shù)據(jù)分析應用程序在運行時動態(tài)行為是可測的,即第一次迭代過程是先驗已知的,而后續(xù)每次的map/reduce操作過程中的輸入數(shù)據(jù)量、新生成數(shù)據(jù)量以及計算復雜度相互獨立,互不影響。
2.2.2 內部虛擬機工作性能評價指標
在第i(i=1,…,I) 次map操作中,設數(shù)量為NumM_i的任務集合采用貪心分配[14]策略分配到kM_i個物理機上。這一過程中,首先需要啟動任務調度操作,因此會引入額外時間,需要單獨考慮其時間開銷,記其執(zhí)行時間為T1,其值與物理設備性能和軟件系統(tǒng)工作機制有關,可以視為一個常量。而后續(xù)任務執(zhí)行的執(zhí)行時間的理論下限出現(xiàn)的情形為:速度最慢的任務最后被調度執(zhí)行,而此前的NumR_i個任務已經(jīng)執(zhí)行完畢。故第i次map操作的理論最大執(zhí)行時間為
(1)
進一步地,其最小執(zhí)行延遲則出現(xiàn)在工作負載完全達到平衡,所有任務都以正常效率執(zhí)行。因此,第i次map操作的理論最小執(zhí)行時間為
(2)
由于MapReduce中reduce操作和map操作相互獨立,但不需要再次進行任務調度操作,故類似于式(1)、式(2),第i(i=2,3,…,J) 次reduce操作的最短執(zhí)行時間與最長執(zhí)行時間為
(3)
綜上,對于第i次迭代過程而言,其執(zhí)行完畢所需時延下界可通過下式估計得到
(4)
對于迭代次數(shù)為I的大數(shù)據(jù)分析應用,其總完成時間可通過下式估計得到
(5)
2.2.3 混合云模式下性能分析模型
混合云模式下,上述估計方法受到如下兩方面因素的影響:①底層后臺基于機架感知策略進行工作負載平衡時會占用額外物理開銷,導致map、reduce和調度操作的執(zhí)行速度被削弱;②當同時部署外部公有云虛擬機和內部私有云虛擬機時,二者間的調度操作將受到通信傳輸能力的限制。
為簡化分析,我們首先忽略公有云與私有云虛擬機之間數(shù)據(jù)調度存在的通信能力受限問題,重點關注混合云模式下大數(shù)據(jù)分析應用執(zhí)行過程中的時延預測問題,從兩方面提出一種改進的執(zhí)行時間預測方法。具體而言:
(1)引入一個衰減作用因子β以表征負載平衡過程中對MapReduce執(zhí)行速度的影響,當負載平衡操作運行時,β>1,而負載平衡操作完成后,β=1;
(2)由于負載平衡期間引發(fā)的數(shù)據(jù)從內部虛擬機遷移到外部虛擬機,故更多的本地資源可提供給調度程序,等效于更多的外部資源可以執(zhí)行映射操作。為便于分析,設只有本地私有云上的機架用于調度操作。此外,所有映射操作在開始迭代MapReduce時進行調度。從而第i次并發(fā)執(zhí)行的map操作數(shù)量kM_i取決于迭代開始時負載平衡的進度;當負載平衡進度完成后,并發(fā)執(zhí)行的映射操作占用的物理槽位分布于內部私有云虛擬機和外部公有云虛擬機上。從而混合云模式下,map操作的總完成時間的上界和下界分別為
(6)
2.2.4 基于隨機森林算法的參數(shù) (β,kM_i) 求解
隨機森林算法中,采用分類回歸樹對每個數(shù)據(jù)集樣本構建決策樹。而每顆決策樹采用隨機分裂的方法進一步生成大量決策樹,形成隨機森林。所提算法的主要步驟為:
步驟1 根節(jié)點數(shù)據(jù)樣本生成。對于Num個樣本的數(shù)據(jù)集,有放回地選擇num(≤Num) 個樣本組成新的Bootstrap樣本,并將其作為該決策樹的根節(jié)點處的樣本,每個樣本對應的特征量為私有云虛擬機數(shù)量、外部公有云虛擬機數(shù)量、數(shù)據(jù)規(guī)模、map操作數(shù)量、reduce操作數(shù)量,共5個,特征構成的集合記作P0={p1,p2,p3,p4,p5};
步驟2 決策樹分裂操作。每個數(shù)據(jù)樣本中的數(shù)量若小于某一閾值γ,則樣本既作為根節(jié)點數(shù)據(jù)集也作為葉子節(jié)點不再進行分裂;否則,從上述5個特征量中隨機選擇η個特征量構成集合p′, 一般η經(jīng)驗值要大于總特征數(shù)量的 1/3,本文選取為2。對P′中的每個特征p′={p1,p2,p3,p4,p5}, 選擇λ(λ=1,2,…,λmax) 個分裂點對p′在其允許范圍內進行隨機改變,例如對私有云虛擬機數(shù)量在其最小值與最大值間隨機變化。進而計算出分裂后的參數(shù) (β,kM_i)。 計算出Num個樣本以不同特征量 {pj}(j=1,2,3,4,5) 和分裂點λk(k=1,2,…,λmax) 進行分裂的方差,若方差的最小值小于閾值σ, 則將本節(jié)點作為葉子節(jié)點不再分裂;反之,所選擇最小方差對應的特征量以及分裂點取值作為分裂特征和分裂點作為最佳分裂點;
步驟3 重復上述步驟1和步驟2,構建具有一定數(shù)量的決策森林。
為驗證所提方法的可行性與優(yōu)異性,搭建混合云測試平臺,其中,內部私有云具有4個網(wǎng)絡節(jié)點,配置4核Intel Xeon X3430 CPU,500 GB HDD和4 GB RAM,用于資源管理任務。外部公有云具有4個網(wǎng)絡節(jié)點,配置2×8核Intel Xeon E5-2630v3 CPU,1 TB HDD和64 GB RAM。用于配置虛擬機。內部云與外部云均運行OpenStack云計算程序,運行QEMU/KVM應用程序以配置虛擬機,兩個應用程序相互獨立。OpenStack云計算程序將網(wǎng)絡劃分為3個相互獨立的通信域:管理網(wǎng)絡(即用于傳輸控制消息和管理流量),內部網(wǎng)絡(即用于傳輸使用內部私有云IP地址的虛擬機之間的流量)和外部網(wǎng)絡(即用于傳輸內部私有云虛擬機與外部公有云間的流量)。內部私有云虛擬機和外部公有云虛擬機的任何通信都通過網(wǎng)絡進行通信,且通信吞吐量為1 Gbps。
對于虛擬機配置,提出如下配置參數(shù):每個虛擬機具有4個CPU,100 GB HDD和16 GB RAM,且每個計算節(jié)點都具有管理4個虛擬機的能力。如圖2所示,對于內部私有云,每個云計算節(jié)點部署4個Hadoop 2.6.0的虛擬機,并指定其中一個虛擬機作為Hadoop主服務器,而其它虛擬機作為Hadoop從服務器;對于外部公有云,每個云計算節(jié)點配置1-3個部署了Hadoop的虛擬機。
圖2 混合云部署示例
基于前述分析,實驗驗證目標具體而言有兩個:①驗證2.1節(jié)所提數(shù)據(jù)存儲策略的可行性;②驗證第2節(jié)所提性能預測方法的準確性。故設計如下實驗場景:
場景1:構建參數(shù) (β,kM_i) 求解隨機森林:通過構造樣本數(shù)據(jù)得到參數(shù) (β,kM_i) 的隨機森林。
場景2:數(shù)據(jù)存儲策略驗證實驗:通過改變內部私有云和外部公有云上部署的虛擬機數(shù)量,與場景1標準樣本中的配置方案下統(tǒng)性能進行對比,以驗證實驗目標1。
(7)
然后,討論理論預測結果與實際運行時延的對比結果以驗證實驗目標②。此外,為進一步說明所提方法的適用性,設置兩組不同的大數(shù)據(jù)分析應用程序,即:K-means聚類分析和非結構化文本分析。
本次實驗中,使用的輸入數(shù)據(jù)量大小為20 GB,而每個映射處理器處理的數(shù)據(jù)量大小是隨機變化的,等價于映射處理器的數(shù)量是隨機變化的。因此,生成隨機森林算法所使用的數(shù)據(jù)樣本生成操作為:首先,在內部虛擬云中的3個虛擬機上部署HDFS,并寫入運行TestDFSIO來生成數(shù)據(jù)塊。在初始數(shù)據(jù)寫入完畢后,部署在內部私有云虛擬機上的HDFS可進一步擴展部署至外部公有云虛擬機上;其次,在負載平衡階段,令同時啟動另一個TestDFSIO程序。
同時,令負載平衡階段內部存儲的每個數(shù)據(jù)塊至少一個副本被移動到外部部署的虛擬機上。在實驗運行期間,記錄負載平衡階段遷移到外部公有云上的數(shù)據(jù)數(shù)量,從而形成包含不同虛擬機配置方案以及對應算法性能的數(shù)據(jù)樣本。進而應用2.2.4節(jié)所提步驟構建隨機森林。
記具有N個部署在內部私有云上的虛擬機和M個部署在外部公有云上的虛擬機配置方案表示為N-on-M-off。其中,令M=0表示基準情況下的傳統(tǒng)單一云存儲方案,采用文獻[15]提出的方案作為對比,而M>0則表示所提混合云存儲方案。基準方案和混合配置方案下TestDFSIO實驗被重復執(zhí)行10次,并將這些結果進行參數(shù)β的計算。表1給出了表示部分配置方案下的數(shù)據(jù)傳輸時間與負載平衡時間的對應關系。其中,配置1:3-on-0-off (即為文獻[15]所提單一云配置方案);配置2:3-on-3-off;配置3:3-on-6-off;配置4:3-on-9-off;配置5:3-on-12-off。表2則示出了TestDFSIO的每個并發(fā)讀取迭代的平均完成時間。
表1 不同虛擬機配置下的負載平衡過程
可以看出,混合云模式下,基于機架感知策略的數(shù)據(jù)遷移存儲與負載平衡顯著占用了物理開銷,從而降低了并發(fā)讀取吞吐量,負載平衡開銷時間與單一云模式上升了40.5%以上。從表2還可以看出,所有混合云配置方案下的β值與單一云模式較為接近。
表2 TestDFSIO 每次迭代的平均完成時間
本節(jié)通過在混合云平臺上運行K-means聚類應用程序以驗證所提方法的可行性。K-means基本原理為,將一組多維向量劃分為k個集合,使得來自相同集合的所有向量之間的距離平方和及其平均值最小。一般使用迭代步驟進行K-means聚類求解,即每次迭代過程中都基于來自先前迭代的結果計算新均值,直到它們保持不變(或變化量小于預設閾值)。
本次實驗中基于MapReduce框架實現(xiàn)K-means聚類分析,在每次迭代時僅生成少量的中間數(shù)據(jù)(即k個集合對應的均值),但迭代過程之間則會有大量保持不變的輸入數(shù)據(jù)。故K-means本質上是一種密集型映射操作。實驗同樣使用20 GB的輸入數(shù)據(jù),并進行10次迭代處理。
首先進行傳統(tǒng)單個OpenStack云進行基準實驗,其中部署Hadoop的虛擬機數(shù)量是可變的。圖3(a)示出了隨著虛擬機數(shù)量變化K-means完成時間的變化特性。可知,隨著Hadoop部署規(guī)模的不斷擴大,執(zhí)行K-means的完成時間在不斷下降,從而驗證了虛擬機的擴展性對K-means性能具有明顯的影響。圖3同樣示出了K-means實際運行時間和利用所提預測方法預測的時延上、下界間的位置關系??梢?,基準實驗下,實際運行時間總是在理論預測的上、下界之間,且上界值與實際運行值間的誤差最多不超過7.8%,而下界值與實際運行值間的誤差最多不超過5.9%。故所提性能預測方法能夠較準確地估計K-means運行所需時間。
隨后,進行混合云平臺下的K-means實驗。包括部署于內部私有云上的3個虛擬機和部署于外部公有云上數(shù)量可變的虛擬機。初始階段,Hadoop僅部署在內部私有云上,并按照第2節(jié)所提數(shù)據(jù)存儲方案擴展到外部公有云上。負載平衡策略與K-means程序同時啟動運行。圖3(b)所示混合云下K-means執(zhí)行時間隨部署虛擬機數(shù)量的變化趨勢。與基準實驗相比,負載平衡階段所占用的物理開銷對執(zhí)行時間產(chǎn)生了負面影響,執(zhí)行時間最多增加40%,但執(zhí)行時間仍是隨著擴展部署的虛擬機數(shù)量增加而下降。圖4同樣示出了采用所提性能預測方法推導的理論執(zhí)行延時的上界與下界值和實際運行時間??芍?,實際運行時間同樣保持在理論推導的上界與下界之間,且下界誤差最多為10%,而上界誤差最多為7.9%。
圖3 實際完成時間與理論預測時間
圖4 K-means聚類每次迭代完成時間
圖4為每次迭代過程的完成時間。對于3-on-0-off的基準情形,每次迭代的完成時間基本保持不變。而對于所提考慮數(shù)據(jù)存儲的混合云方案(即3-on-M-off)情況,第一次迭代的完成時間將明顯大于后續(xù)迭代操作的完成時間。這由于,第一次迭代時同時進行了數(shù)據(jù)遷移與負載平衡操作,從而后續(xù)迭代時可以重復使用不變輸入量。而最終迭代完成時間表明,提出的方案較之于傳統(tǒng)單一云方案降低至少51.4%以上。
通過迭代Grep實驗進一步說明所提方案的適用性。Grep是一種用于大型非結構化文本的流行分析工具,其由一組獨立的Grep操作組成,通過查找與給定正則表達式匹配的所有字符串,并根據(jù)匹配的數(shù)量對它們進行排序。每次迭代過程中,輸入數(shù)據(jù)保持不變,但正則表達式則隨著每次迭代發(fā)生變化。如,為計算百度百科文章中某個術語出現(xiàn)的次數(shù),并依據(jù)統(tǒng)計數(shù)量建立新的正則表達式以找到與另一個術語的相關性。由于正則表達式通常是確定的,故映射操作的輸出十分簡單,因此,Grep可以歸類為典型的映射密集型MapReduce作業(yè)。
本次實驗使用標準的Hadoop Grep應用程序。使用 20 GB 的百度百科文章作為輸入數(shù)據(jù),列舉10個關鍵詞對輸入數(shù)據(jù)進行10次迭代,并同樣采用文獻[15]所提單一云存儲方案作為所提混合云方案的對比實驗。
圖5(a)所示傳統(tǒng)單個云平臺下運行Grep應用程序的完成時間,即基準實驗的完成時間。與上節(jié)類似,隨著虛擬機數(shù)量的增加,完成時間逐漸下降。實際完成時間與理論預測時間的上界與下界之間的誤差分別為19.54%和9.09%,但實際完成時間仍在理論預測的上下限范圍之內。
進一步地,對于混合云模式下的Grep應用程序執(zhí)行性能,同樣在私有云上部署3個虛擬機,而外部公有云虛擬機的數(shù)量是可變的。圖5(b)為Grep完成時間隨虛擬機數(shù)量變化而變化趨勢。同樣地,隨著外部公有云上部署的虛擬機數(shù)量的增加,Grep應用程序執(zhí)行時間逐漸下降。而理論推導的執(zhí)行時延上界與下界與實際執(zhí)行時間之間的誤差為6.86%和7.3%。
圖5 實際完成時間與理論預測時間
類似地,圖6為每次迭代完成時間。對于基準的傳統(tǒng)單一云方案(即3-on-0-off),每次迭代完成時間基本保持不變而混合云模式下(即3-on-M-off),初始迭代完成時間由于數(shù)據(jù)遷移與負載平衡操作的同時進行,其時間長于后續(xù)迭代時間。而最終所提混合云運行方案的迭代完成時間則比單一云平臺下的迭代完成時間縮短至少12.6%。
圖6 Grep文本分析每次迭代完成時間
混合云平臺由于兼具了私有云安全可靠和公有云計算能力強的優(yōu)點,具有明顯的技術經(jīng)濟優(yōu)勢。然而,在混合云框架下運行諸如大數(shù)據(jù)分析之類的密集型數(shù)據(jù)業(yè)務尚處于起步階段,存在底層數(shù)據(jù)存儲與高級應用程序不匹配、應用執(zhí)行時間預測不準確的難點。針對上述問題,本文提出了在混合云上迭代MapReduce程序進行大數(shù)據(jù)分析的實現(xiàn)方法。實驗結果表明,所提數(shù)據(jù)存儲方法僅在大數(shù)據(jù)初次迭代時增加了物理開銷,但有效提升了后續(xù)迭代過程中的執(zhí)行速度,且所提預測方法能夠準確預測迭代大數(shù)據(jù)計算任務的執(zhí)行時間。因此,相較于傳統(tǒng)的大數(shù)據(jù)存儲與遷移方法,所提混合云框架運行大數(shù)據(jù)分析實現(xiàn)方法可以有效節(jié)約計算時間開銷,具有更好的經(jīng)濟性與技術優(yōu)勢。
后續(xù)的研究中,將深入討論私有云與公有云通信傳輸容量限制對迭代MapReduce應用程序執(zhí)行性能的影響,從而進一步提高預測精度。