李 景 林
(貴州民族大學人文科技學院 貴州 貴陽 550025)
?
大數據環境下的網格動態故障檢測研究
李 景 林
(貴州民族大學人文科技學院貴州 貴陽 550025)
摘要研究大數據環境下網格動態故障檢測的方法。大數據來源范圍廣博,數據類型極復雜;數據的廣泛性,資源的高度異構和不同地理上的分布,使網格故障發生成為影響系統應用的主要問題。目前網格故障檢測方式,不能滿足網格動態故障檢測需要。利用“灰色預測理論”的算法,依據動態心跳的原理,設計動態故障檢測架構,給出了預測模型;提出了網格動態故障檢測方法。實驗結果證實是有效的和準確的,提出的動態故障檢測算法優于靜態故障檢測算法,解決了大數據環境下網格動態故障檢測問題。
關鍵詞大數據網格故障檢測研究
0引言
大數據的處理定義為對廣泛異構的數據進行抽象的提取和集成,按照一定的標準進行存儲,利用數據分析技術對存儲的數據進行分析處理,從中提取有用的數據并利用適當的方式將結果提供給用戶。可見大數據是有多樣性的,也就是大數據的來源非常寬泛,數據類型多種多樣,異構性的數據,給大數據的運行和處理帶來較多的困難。
由于大數據下的網格環境和位置分布,網格數據資源的異構,以及數據的動態變化,集成了多個不同域的網格資源[1],這些資源為網格應用提供大量的計算。也就是通過網格的計算執行著數量巨大且復雜的應用程序;在不同地域和管理當中,使用著不同的網格資源,其使用機制和安全方法是各異的。多個應用若同時匯集在多個結點資源上,故障有可能會出現在匯集的結點上,因此網格系統較傳統的計算平臺出錯機率更大。
雖然學術界和工程界對網格動態容錯做了大量的研究,但在通用的錯誤檢測機制、多樣錯誤的處理策略與應用程序代碼相分離機制等方面的研究尚存在問題,沒有解決或沒有較好的解決方案。因此,在某些專家對網格動態容錯機制進行研究的基礎上,對網格動態故障檢測機制及模型進行了研究,在充分識別網格動態容錯技術,依據“灰色預測”的理論,建立一種能有效預測網格資源需求量的模型,作為對已有網格資源的有效補充。在此基礎上,對預測模型做了改進,提高了預測模型的預測精度,提出了動態故障檢測方法。本方法與Stelling、Abawajy等人的靜態層次結構的故障檢測方法相比較,解決了網格故障檢測的技術難點。提出網格動態故障檢測技術。通過實驗室進行實驗以及實驗結果與前人已用靜態方法相比較,表明本文提出的方法是有效的、正確的,可以將提出的方法應用于大數據環境下網格的動態故障檢測服務。
1固定心跳的故障檢測原理
在大數據環境下的網格資源中,一般情況下都采用了“心跳” (Heartbeat) 機制作為監測方法。也就是每一個進程p固定時間向故障檢測器發送心跳信源,以說明進程是在正常運行的。在設定的時間間隔te內,如果檢測器沒有收到其監視進程p的心跳信源,就要懷疑進程p故障了。經過一定的超時時限,還是沒有收到進程p的心跳信源,那么進程p可能發生故障(failure)了。

圖1 Stelling故障檢測架構
Stelling等人曾采用層次結構的故障檢測方法,提出層次結構的網格故障檢測架構,如圖1所示。檢測為兩層方式,一是數據監視層,二是數據收集層。監視層的工作主要是監視網格主機上的程序,為數據收集層提供心跳的信源;數據收集層一旦接收到信源后,要判定有無故障發生且是哪些部件發生故障,然后告訴主機有發生故障的部件。因為這是簡單的兩層結構,監視層向所有的數據層收集器發布心跳信息,可能會引起系統流量增加;另外,Stelling等人的故障檢測是在靜止狀態下進行的,不能適應網格動態的變化[2]。針對上述不足,Abawajy補充了故障檢測方法,彌補Stelling等人方法的缺陷[3]。故障檢測工作交由系列故障監視器去進行,將故障監視器按照三層以上的結構方式進行排列,故障監視器的主要任務就是監視對應的節點,分別在不同的級別實現對應用程序狀態的監控,Abawajy這種方法雖然解決了Stelling方法的不足,由于Abawajy結構方式受到靜態性質的限制,該方法還是不能夠解決網格的動態性故障檢測問題。
由于Stelling等人的故障檢測方法只能滿足擴展性、低流量問題,不能夠解決動態性需求。因此,對網格故障的檢測,需要系統地設計出網格動態故障檢測方法,既滿足擴展性和低流量需求,還能滿足動態性的要求,也就是能夠隨網格環境的變化和需要而動態性地改變網格故障檢測方法[4]。
2動態故障檢測架構原理
根據動態心跳機制的原理[5~7],提出一種基于灰色理論的故障檢測方法,建立了動態心跳信息到達時間的預測模型,并作出了檢測算法。提出三層動態故障檢測架構見圖2所示。

圖2 三層動態故障檢測架構圖
消息收集層:將被監視進程的心跳信息到達時間提交至消息判定層,按信息到達順序進行排序,提供于動態預計層進行動態性預測,供消息判定層決策。
動態預計層:將來自消息收集層的結果提供消息判定層,并預計被監視進程下一次的心跳消息到達時間,將預計情況一并上交。
消息判定層:根據消息收集層和動態預計層提供的信息,對被監視進程的心跳消息進行監控,并以此判定被監視進程有否故障。
3動態故障檢測模型
以心跳信息到達時間建立預測模型[8]。根據當前心跳信息的到達時間,預計下一次心跳信息到達的時間[9]如下:
1) 設立心跳信息到達時間序列
為被監視節點每一次出現的心跳信息增加一個序列號。n次連續心跳信息到達的時間原始序列t(0),即:
t(0)=(t(0)(1),t(0)(2),t(0)(3),…,t(0)(n))
(1)
2) 對原始序列t(0)作累加處理(AGO)
得到累加生成序列t(1)為:
t(1)=(t(1)(1),t(1)(2),t(1)(3),…,t(1)(n))
(2)
其中:
(3)
3) 建立GM(1,1)模型
對累加生成序列t(1)立一階微分方程得如式(4)所示:
(4)
則為信息模型,其中a和b為灰作用量參數。
對信息模型采用最小二階乘法求解,可得:
(5)
其中:
(6)
并且:
(7)
Tn=[t(0)(2),t(0)(3),t(0)(4),…,t(0)(n)]T
(8)
(9)
4) 下一次心跳信息的到達時間。

(10)
對一階微分方程GM(1,1)的灰色模型進行修正,補充條件來提高預測精度,建立動態的網格預測模型:

2) K+1時心跳到達后,將序列t(0)中去掉t(0)(1),加入t(0)(K+1),構成新動態預測序列:
建立了新陳代謝的GM(1,1) 模型,因此預測為最近一次心跳消息,能夠表明故障檢測的動態變化情況。
4網格故障檢測算法描述
為便于描述算法,在此給出進程p和q的算法原理過程。p定時向q發送心跳信息,算法如下:
Initializationbegins:
p心跳信息已經到達時刻T[i];
‖T[i]‖= n;
Task1:
在i.Δi時刻,p向q發送心跳信息;
//Δi每次時間間隔
Task2:
在Tm時,
IFj < n
{T [i] = Tm ;
i ++ ;
IF i = n
T(0)=(T(0),T(1),T(2),…,T(n-1));
//將達時間作為原始序列模型

//第n+1次心跳信息到達的時間
}
else
{For (j=0; j T[i]=T[i+1]; T[n-1]=Tm; //改變序列值。在獲得n+1時的數據后,對模型進行補充提高 } Task3: 對給出的算法說明如下: Task1:被監視進程上pj的故障檢測組件向監視進程qi上的故障檢測組件發送心跳信息。 Task3 : qi沒有接收pj所發送的信息,就認為pj故障了;若qi收到了pj發送出的信息,qi就會將pj消除。 5實驗結果及分析 5.1實驗條件 動態故障檢測實驗由兩臺異地計算機構成,其配置為:PIV2.4GHz處理器,1GHz內存,操作系統為Linux9。所有消息均采用UserDatagramProtocol協議傳送,實驗時間為36小時。 5.2實驗結果 Chen[10]等人依據質量標準(QoS),與Keceive算法為對比,其動態故障檢測算法評價標準為: 1) 故障檢測時間:pj發生故障開始到qi已經認為pj故障發生這一時段。 2) 故障出錯率:故障檢測過程所產生出的誤判斷出錯的多少。 實驗一:以心跳消息量數為100,本文算法(Ours)與Chen[9]算法(基于層次結構的靜態心跳算法)的故障檢測時間比較,結果見圖3所示。 圖3 本文算法與chen算法比較 實驗二:以心跳信息到達時間大小相比較。通過心跳信息量的變化,對故障出錯率的影響,結果見圖4。 5.3實驗解析 由圖4可見,故障檢測在時間耗費方面,比Chen所消耗的時長要低,解決了流量較低問題。 圖4 心跳信息到達時間對出錯率的影響 圖4表明,隨n值的增加故障檢測出錯率呈下降低的趨勢,曲線逐漸趨于直線,故障檢測的出錯率沒有較大的變化,出錯率低而平穩,動態地擴展了網格資源。 綜上所述,本文提出的網格動態故障檢測的方法最終是符合要求的,在心跳消息處理上,也就是發送的消息都是可以收到的。因此以上實驗充分證明了大數據環境下網格的動態故障檢測方法是有效的和正確的,解決了前述的難點,證實了網格動態故障檢測方法滿足擴展性、低流量和動態性的要求。 6結語 大數據下的網格系統復雜環境以及廣闊地理分布,使得網格應用中故障的發生影響了網格的發展和應用,因此本文根據動態心跳原理,給出動態故障檢測基本算法,進行了廣域網的實驗,驗證算法的準確性。實驗確定的心跳消息到達時間和平均誤差率上,與Stelling、Abawajy等人的故障檢測方法作對照,本文實驗的心跳消息到達時間方面要少些、誤差率小些,解決了擴展性、動態性和低流量問題,可以用于大數據環境下網格的動態故障檢測服務。 參考文獻 [1] 王濤.基于語義網格的稅務信息系統研究[J].計算機應用與軟件,2012,29(1):125-127. [2]CheJW,TougS,AguileraMK.OnthequailityOfserviceoffailuredetectors[J].IEEEOnComputers,2008:13-33. [3]ChenW,TouegS.Onthequalityofserviceoffailuredetectors[J].IEEETransactionsonComputers,2008 51(1):61-80. [4] 李景林.網格環境下的故障檢測服務研究[J].計算機應用與軟件,2010,27(6):120-122,131. [5]JoergDecker,JoergSchneider.HeuristicSchedulingofGridWorkflowsSupportingCo-AllocationandAdvanceReservation[C]//Proc.ofthe7thCCGrid,2007:335-343 [6]StellingP,DematteisC,FosterI,etal.Afaultdetectionserviceforwideareadistributedcomputations[J].ClusterComputing,2009(2):107-118. [7]LanierWatkin,WilliamHRobinson,RaheemBeyah.APassiveSolutiontotheCPUResourceDiscoveryProbleminClusterGridNetworks[J].IEEETransa-ctionsonParallelAndDistriduledSystems,2011(3):1-5. [8] 劉思峰,黨耀國,方志耕.灰色系統理論及其應用(第五版)[M].北京:科學出版社,2010. [9] 吳東波,呂君文.一種改進的二次失效檢測算法[J].計算機工程與應用,2014,50(14):96-99. [10]Foster.TheGrid:ANewInfrastructurefor21CenturyScience[J].Today,2009(2):45-47. RESEARCH ON DYNAMIC GRID FAULT DETECTION IN BIG DATA ENVIRONMENT Li Jinglin (College of Humaniyes and Sciences,Guizhou Minzu University,Guiyang 550025,Guizhou,China) AbstractWe study the method of dynamic grid fault detection in big data environment.The source range of big data is extensive,the data types are extremely complex; the extensiveness of data,the highly heterogeneous resources and the different geographical distribution make the grid fault occurrence become the major problem affecting system applications.Current grid fault detection mode can not meet the needs of dynamic grid fault detection.We use “grey prediction theory” algorithm and based on the principle of dynamic heartbeat to have designed the dynamic fault detection architecture,and give the prediction model; we propose the dynamic grid fault detection method.Experimental results prove that it is effective and accurate,the proposed dynamic fault detection algorithm outperforms the static fault detection algorithm,it solves the problem of dynamic grid fault detection in big data environment. KeywordsBig dataGridFaultDetectionResearch 收稿日期:2015-01-31。貴州省科學技術基金項目(黔科合J字[2010]2106號)。李景林,教授級高工,主研領域:網格計算,BIM應用,物流技術。 中圖分類號TP391 文獻標識碼A DOI:10.3969/j.issn.1000-386x.2016.06.013


