摘要:所謂的大數據是指那些無法用傳統(tǒng)方法處理的數據信息,可以將其理解為海量數據與復雜類型數據的總和。大數據時代下,人們可以利用的信息增多,但是獲取有效信息的難度明顯加大,因此研究面向大數據的并行計算機模型及性能優(yōu)化是非常有必要的。
關鍵詞:大數據處理;并行計算模型;性能優(yōu)化;數據信息;海量數據;復雜類型數據 文獻標識碼:A
中圖分類號:TP391 文章編號:1009-2374(2016)06-0033-02 DOI:10.13535/j.cnki.11-4406/n.2016.06.017
信息技術的發(fā)展將人們推進了大數據時代,數據信息數量大、樣式多且價值密度不高,使用傳統(tǒng)的數據處理方法已經不能滿足實際要求。為了更好地利用這些數據資源,在大數據時代的挑戰(zhàn)中尋找到機遇,人們需要進一步研究并行計算機模型,實現模型優(yōu)化,抓住大數據時代的機遇,促進大數據的進一步發(fā)展。
1 并行計算模型的發(fā)展趨勢
首先,從計算機存儲的角度來說,在大數據背景下將面臨更加嚴峻的存儲問題。我國計算機產業(yè)格局并不是處理與存儲一體化,處理廠商與存儲廠商處于相互分離的狀態(tài),導致這兩項技術的發(fā)展出現不平衡現象,計算機系統(tǒng)的存儲性能已經不能滿足實際需要。從1985年到現在,計算機處理器性能以每年60%的速度提高,而存儲性能的提升速度僅為每年9%。50%左右的差距導致處理性能與存儲性能之間越來越不協調,因此未來在研究并行計算機模型時,會將存儲性能作為重點研究對象。
其次,計算機體系結構中,多核逐漸成為主流。要想進一步提升系統(tǒng)的運算能力,僅僅依靠提升晶體管的集成度是不夠的,因為系統(tǒng)運算能力還會受到材料物理性能等因素的影響,因此,系統(tǒng)中應用多核技術已經成為一種必然趨勢。所謂多核技術,就是將多個計算內核集成在一個處理器中,每一個內核都能完成一個計算指令,這樣一個處理器就能夠完成并行計算指令。多核CPU的計算密度更高,并行處理能力更強,在相同計算條件下所消耗的功率更低,可以滿足實際需要。
再次,異構眾核集成技術在并行計算模型中的應用越來越廣泛。一般情況下模型中都采用CPC與MIC組合構架模式,相對復雜的邏輯計算部分由CPU負責,而一些密集運算則由CPU或者是MIC來負責,這些密集運算的典型特征就是分支較少且并行度高,這種異構方式為超級計算機的發(fā)展奠定了基礎。
最后,服務器逐漸向著大規(guī)模集群化且廉價化的方向發(fā)展,越來越多的互聯網企業(yè)和網絡運營商選擇將大規(guī)模服務廉價集群作為系統(tǒng)硬件設施。這種集群式服務器的典型特征就是會自動將故障狀態(tài)視為常態(tài),因為即使集群中的一部分組間發(fā)生故障,也不會對系統(tǒng)整體造成太大影響。同時,該集群會為異構硬件擴容提供支持,或是在系統(tǒng)中加入存儲資源,或是直接加入新的機器,系統(tǒng)根據實際情況對這些資源或者機器進行自動調取,這一過程不會對系統(tǒng)運行產生任何影響。
2 面向大數據處理的計算模型分析
2.1 模型概述
隨著計算機技術的發(fā)展,大數據編程模型已經取得了不錯的研究成果,其主要被應用在數據分析以及數據處理上,但是對于并行計算模型的研究卻不夠深入,從目前的情況來看需要解決以下問題:
首先,成熟的計算模型中需要包括以下兩個要素:一是機器參數,包括CPU以及節(jié)點規(guī)模等;二是成本函數,其代表的是機器參數的函數,具體包括時間成本函數和空間成本函數。對這兩個要素進行深入研究,能夠對并行計算模型的發(fā)展提供理論支持。
其次,目前使用的大數據編程模型為了提高計算能力,會為系統(tǒng)資源提供橫向擴展支持,同時程序中自帶容錯機制,一旦出現節(jié)點失效問題能夠及時應對,雖然在一定程度上提高了應對能力,但是編程的擴展性以及容錯性都是針對某個案例而言,因此并沒有統(tǒng)一的度量標準,因此面向大數據處理的并行計算模型,需要對擴展性以及容錯性這兩個性能進行準確定義,用統(tǒng)一標準來評判其能力。
最后,大數據的應用效率會受到很多因素的影響,包括并行性級別、通訊問題以及存儲問題等,目前所指的性能優(yōu)化大多數都是針對某個系統(tǒng)框架或者是某個模型而言的,沒有一個完整、統(tǒng)一的理論,而面向大數據處理的并行計算模型就要解決這一問題,統(tǒng)一優(yōu)化理論、制定出可以面向所有模型的優(yōu)化方法。
2.2 p-DOT模型分析
p-DOT模型在設計時將BPS模型作為基礎,模型的基本組成是一系列iteration,該模型主要由三個層次
組成:
首先,D-layer,也就是數據層,整個系統(tǒng)的結構呈現出分布式,各個數據節(jié)點上存儲數據集。
其次,O-layer,也就是計算層,假設q為計算的一個階段,那么該階段內的所有節(jié)點會同時進行獨立計算,所有節(jié)點只需要處理自己對應的數據,這些數據中包括最初輸入的數據,也包括計算中生成的中間數據,這樣實現了并發(fā)計算,得到的中間結果直接存儲在模
型中。
最后,T-layer,也就是通信層,在q這一階段內,通信操作子會自動傳遞模型中的消息,傳遞過程遵循點對點的原則,因為q階段中的所有節(jié)點在經過計算以后都會產生一個中間結果,在通信操作子的作用下,這些中間結果會被一一傳遞到q+1階段內。也就是說,一個階段的輸出數據會直接被作為下一個階段的輸入數據,如果不存在下一個階段或者是兩個相鄰階段之間不存在通信,則這些數據會被作為最終結果輸出并存儲。
在并行計算模型下,應用大數據和應用高性能之間并不矛盾,因此并行計算模型具有普適性的特征,前者為后者提供模式支持,反過來,后者也為前者提供運算能力上的支持。另外,在并行計算模型下,系統(tǒng)的擴展性和容錯性明顯提升,在不改變任務效率的前提下,數據規(guī)模以及機器數量之間的關系就能夠描述出系統(tǒng)的擴展性,而即使系統(tǒng)中的一些組件出現故障,系統(tǒng)整體運行也不會受到影響,體現出較好的容錯性。
p-DOT模型雖然是在DOT模型的基礎上發(fā)展起來的,但是其絕對不會是后者的簡單擴展或者延伸,而是具備更加強大的功能:一是p-DOT模型可以涵蓋DOT以及BSP模型的處理范式,應用范圍比較廣;二是將該模型作為依據能夠構造出時間成本函數,如果在某個環(huán)境負載下大數據運算任務已經確定,我們就可以根據該函數計算出整個運算過程所需要的機器數量(這里將最短運行時間作為計算標準);三是該并行計算模型是可以擴展的,模型也自帶容錯功能,具有一定的普適性。
3 基于計算模型的性能優(yōu)化方法分析
3.1 D-layer的優(yōu)化
要想實現容錯性,要對系統(tǒng)中的數據進行備份,因為操作人員出現失誤或者是系統(tǒng)自身存在問題,數據有可能大面積丟失,這時備份數據就會發(fā)揮作用。一般情況下,系統(tǒng)中比較重要的數據會至少制作三個備份,這些備份數據會被存儲在不同場所,一旦系統(tǒng)數據層出現問題就會利用這些數據進行回存。對于數據復本可以這樣布局:一是每個數據塊中的每個復本只能存儲在對應節(jié)點上;二是如果集群中機架數量比較多,每個機架中可以存儲一個數據塊中的一個復本或者是兩個復本。從以上布局策略中我們可以看出,數據復本的存儲與原始數據一樣,都是存儲在數據節(jié)點上,呈現出分散性存儲的特征,這種存儲方式是實現大數據容錯性的基礎。
3.2 O-layer的優(yōu)化
隨著信息技術的發(fā)展以及工業(yè)規(guī)模的擴大,人們對大數據任務性能提出了更高的要求,為了實現提高性能的目標,一般計算機程序會對系統(tǒng)的橫向擴展提供支持。隨著計算機多核技術的普及,系統(tǒng)的并行處理能力明顯增強,計算密度明顯提高,對多核硬件資源的利用效率明顯提升。傳統(tǒng)并行計算模型主要依靠進程間的通信,而優(yōu)化后的模型則主要依靠線程間的通信,由于后者明顯小于前者,因此在利用多核技術進行并行計算時,能夠在不增大通信開銷的基礎上明顯提升計算
性能。
3.3 T-layer的優(yōu)化
為了提升計算模型的通信性能,需要對大數據進行深度學習,具體原因如下:
首先,無論使用哪種算法,都需要不斷更新模型,從分布式平臺的角度來說,每一次迭代都代表一次全局通信,而一部分模型的迭代次數又非常多,同時模型中包含大量位移參數以及權重,例如模型AlexNet的基礎是卷積神經網絡,其迭代次數可以達到45萬,耗費系統(tǒng)大量通信開銷。
其次,如果分布式平臺上本身就有很多機器,那么迭代過程就需要將機器的運行或者計算作為基礎,就是說要想完成一次迭代,平臺上所有的機器都要逐一進行計算,計算完成以后還需要對參數進行同步。這種迭代模式容易受到短板效應的制約,算法通信開銷并不取決于計算速度最快的機器,而是取決于最慢的機器。為了避免短板效應,在對并行計算模型進行優(yōu)化時,可以采用同步策略,對于計算速度較慢的機器進行加速,提升迭代類任務的通信性能。
4 結語
當前,人類已經進入了大數據時代,計算機并行機構體系發(fā)生了很大改變,人們對計算機系統(tǒng)模型的計算能力也提出了更高要求,這對并行計算來說既是一種機遇,也是一種挑戰(zhàn),基于此,本文研究了基于大數據的并行計算模型及其優(yōu)化。
參考文獻
[1] 覃雄派,王會舉.大數據分析——RDBMS與MapReduce的競爭與共生[J].軟件學報,2012,23(1).
[2] 程果,景寧.柵格數據處理中鄰域型算法的并行優(yōu)化方法[J].國防科技大學學報,2012,34(4).
[3] 潘巍,李戰(zhàn)懷.大數據環(huán)境下并行計算模型的研究進展[J].華東師范大學學報(自然科學版),2014,(5).
[4] 張延松,焦敏.海量數據分析的One-size-fits-allOLAP技術[J].計算機學報,2011,34(10).
[5] 董新華,李瑞軒.Hadoop系統(tǒng)性能優(yōu)化與功能增強綜述[J].計算機研究與發(fā)展,2013,(5).
作者簡介:文娟(1982-),女,湖南長沙人,威仁科技(北京)有限公司總經理,研究方向:計算機應用、大數據、云計算。
(責任編輯:周 瓊)