專利名稱:一種自適應(yīng)磁盤陣列故障預(yù)測方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計算機網(wǎng)絡(luò)管理技術(shù)領(lǐng)域,具體涉及一種磁盤陣列故障預(yù)測系統(tǒng)的實 現(xiàn)方法和裝置。
背景技術(shù):
隨著大型計算機信息系統(tǒng)的不斷投入使用,海量數(shù)據(jù)存儲系統(tǒng)獲得了越來越廣泛 的應(yīng)用,其中最重要的是磁盤陣列系統(tǒng)(RAID,RedundantArray of Independent Disks)。 RAID最初是由加利福尼亞大學(xué)伯克利分校的D. A. Patterson教授在其論文中提出來的,作 為一種數(shù)據(jù)保存手段,它的作用是提供專用服務(wù)器中接入多個磁盤(專指硬盤)時,以磁盤 陣列方式組成一個超大容量、響應(yīng)速度快、可靠性高的存儲子系統(tǒng)。通過數(shù)據(jù)分塊技術(shù)和冗余機制,磁盤陣列系統(tǒng)具備了一定的數(shù)據(jù)可靠性保障,但 這種保障機制是有限的具體到某一業(yè)務(wù)系統(tǒng)的磁盤陣列,往往使用質(zhì)量一致性相近的相 同型號和批次的磁盤,在長期使用之后,當一塊磁盤出現(xiàn)故障時,其它磁盤出現(xiàn)故障的可能 性也就很大,如果短時間內(nèi)多塊磁盤連續(xù)發(fā)生故障,則依靠磁盤陣列系統(tǒng)自身的可靠性機 制無法恢復(fù)數(shù)據(jù)。由于磁盤陣列上往往存儲著非常重要的業(yè)務(wù)數(shù)據(jù),一旦出現(xiàn)不可恢復(fù)的災(zāi)難性故 障,將會造成難以估量的損失。目前磁盤陣列運行在線監(jiān)控系統(tǒng),往往只能對已經(jīng)發(fā)生的磁 盤陣列故障進行檢測和告警,更進一步,人們希望能夠?qū)Υ疟P陣列系統(tǒng)可能發(fā)生的故障進 行預(yù)測。申請?zhí)?00510088506. 3的中國專利“磁盤裝置的故障預(yù)測方法及使用該方法的磁 盤裝置”以及申請?zhí)?00710004243. 2的中國專利“預(yù)測存儲設(shè)備故障的裝置、系統(tǒng)和方法” 分別對此進行了闡述。在傳統(tǒng)的磁盤故障預(yù)測方法中,主要是通過實時采集磁盤系統(tǒng)的故 障監(jiān)控指標,并通過與預(yù)設(shè)的預(yù)測故障指標閾值進行比較,當實時采集的指標超過預(yù)測故 障指標閾值時,通過一定的分析計算后進行判別處理。傳統(tǒng)的磁盤陣列故障預(yù)測方法主要 存在如下問題(1)參數(shù)采集方式缺乏自適應(yīng)性。往往只是對固定的幾個故障預(yù)測參數(shù)進行采集 和計算,所以只能針對特定的磁盤陣列系統(tǒng)進行信息采集和故障預(yù)測。對于采集參數(shù)多采集周期短的系統(tǒng),往往影響系統(tǒng)性能。而對于采集參數(shù)少的系 統(tǒng),故障預(yù)測的準確性又受到影響。缺乏對故障告警時間的提前預(yù)測。往往是在檢測到故障參數(shù)超過閾值時發(fā)出告 警,而對于何時故障參數(shù)將會超過閾值并沒有任何的預(yù)測或者預(yù)測精度差,而當故障參數(shù) 超過閾值時很可能離磁盤出現(xiàn)實際故障的時間已經(jīng)很短,不利于備品備件的提前準備。
發(fā)明內(nèi)容
本發(fā)明針對上述問題,提出一種自適應(yīng)磁盤陣列故障預(yù)測系統(tǒng),可以根據(jù)磁盤陣 列的歷史運行數(shù)據(jù)推斷磁盤陣列所處的健康狀況,進而根據(jù)磁盤陣列的健康狀況自適應(yīng)的 調(diào)節(jié)故障檢測參數(shù)的數(shù)量和檢測周期,達到對磁盤陣列故障預(yù)測的自適應(yīng)粒度調(diào)節(jié),從而更加高效更加可靠的保護磁盤數(shù)據(jù)。為了實現(xiàn)上述目的,本發(fā)明所描述的自適應(yīng)磁盤陣列故障預(yù)測方法,包括如下主 要步驟按照粗參數(shù)粒度、粗時間粒度策略采集一段時間內(nèi)的磁盤陣列的健康和性能指標 參數(shù)并建立每個指標參數(shù)的歷史數(shù)據(jù)庫;每個指標參數(shù)的歷史數(shù)據(jù)庫建立后,對每一個新 采集到的指標參數(shù),根據(jù)其歷史數(shù)據(jù)通過人工神經(jīng)網(wǎng)絡(luò)方法訓(xùn)練一參數(shù)預(yù)測網(wǎng)絡(luò);并利用 訓(xùn)練好的參數(shù)預(yù)測網(wǎng)絡(luò)對磁盤陣列的健康和性能指標參數(shù)進行初次預(yù)測;將初次預(yù)測的結(jié) 果與一定參數(shù)粒度、一定時間粒度所對應(yīng)的一參考閾值進行比較,按照給定的計算模型進 行計算和分析,如果判斷出磁盤陣列未來一段時間內(nèi)健康狀態(tài)良好,則可以繼續(xù)按照該參 數(shù)粒度、時間粒度策略實施預(yù)測;如果判斷出未來一段時間內(nèi)磁盤陣列健康狀態(tài)將要開始 惡化,則增加檢測參數(shù)的粒度并縮短預(yù)測故障的時間粒度,以得到磁盤陣列系統(tǒng)更精確的 故障預(yù)測信息;再對增加檢測參數(shù)并縮短預(yù)測故障的時間粒度后的每一個新采集到的指標 參數(shù),根據(jù)其歷史數(shù)據(jù)通過人工神經(jīng)網(wǎng)絡(luò)方法重新訓(xùn)練參數(shù)預(yù)測網(wǎng)絡(luò),并利用訓(xùn)練好的新 的參數(shù)預(yù)測網(wǎng)絡(luò)對磁盤陣列的健康和性能指標參數(shù)進行預(yù)測,得到預(yù)測結(jié)果;將再次的預(yù)測結(jié)果與對應(yīng)增加的檢測參數(shù)粒度以及縮短的時間粒度的第二參考 閾值進行比較,按照給定的計算模型進行計算和分析,如果判斷出磁盤陣列未來一段時間 內(nèi)健康狀態(tài)良好,則可以保持當前的檢測參數(shù)和時間粒度實施預(yù)測;反之,如果判斷出磁盤 陣列系統(tǒng)即將發(fā)生故障時,則產(chǎn)生報警信息,通知相關(guān)人員或者外部系統(tǒng)進行處理。前述增加檢測參數(shù)粒度并縮短時間粒度的第二次預(yù)測可以有多次,如果在多次預(yù) 測中的任意一次判斷出磁盤陣列未來一段時間內(nèi)健康狀態(tài)良好,則可以保持當前的檢測參 數(shù)和時間粒度實施預(yù)測;如果判斷出未來一段時間內(nèi)磁盤陣列健康狀態(tài)將要進一步惡化, 則進一步增加檢測參數(shù)至細參數(shù)粒度并縮短預(yù)測故障的時間粒度至細時間粒度,以得到磁 盤陣列系統(tǒng)更精確的健康信息;直至判斷出磁盤陣列系統(tǒng)即將發(fā)生故障時,則產(chǎn)生報警信 息,通知相關(guān)人員或者外部系統(tǒng)進行處理。本發(fā)明所述的磁盤陣列系統(tǒng)健康和性能參數(shù),至少包括磁盤數(shù)據(jù)讀取速度、磁盤 數(shù)據(jù)寫入速度、磁盤數(shù)據(jù)讀寫速度、錯誤讀取率、啟動/停止次數(shù)、重新分配扇區(qū)數(shù)、旋轉(zhuǎn)重 試次數(shù)、磁盤校準重試次數(shù)、ULTRA DMA奇偶校驗錯誤率、多區(qū)域錯誤率等。本發(fā)明的方法所述的檢測參數(shù)粒度和檢測時間粒度,可以由系統(tǒng)管理人員通過系 統(tǒng)進行人工配置得到。一般情況下初始的參數(shù)粒度可選3 5個主要的檢測參數(shù),中間的 參數(shù)粒度增加為6 9個檢測參數(shù),最終的參數(shù)粒度增加為10 15個檢測參數(shù);初始的時 間粒度可選為1個月,中間的時間粒度選為1周,最終的時間粒度可選為1天。實際的策略 配置應(yīng)根據(jù)系統(tǒng)的實際情況靈活掌握。當然,本領(lǐng)域一般技術(shù)人員應(yīng)當理解,這些示例性數(shù) 值并非意在限定本發(fā)明的保護范圍。本發(fā)明所述的自適應(yīng)磁盤陣列故障預(yù)測系統(tǒng),與外部系統(tǒng)磁盤陣列系統(tǒng)和告警系 統(tǒng)分別相連。故障預(yù)測系統(tǒng)定期采集磁盤陣列的健康和性能參數(shù),通過系統(tǒng)內(nèi)部的參數(shù)預(yù) 測和綜合分析,在預(yù)測出磁盤陣列故障時向外部告警系統(tǒng)發(fā)出告警信號,由外部告警系統(tǒng) 進行進一步的處理。磁盤陣列故障預(yù)測系統(tǒng)自身包含有下述功能模塊信息采集模塊定期采集磁盤陣列的健康和性能參數(shù)信息,通過數(shù)據(jù)的規(guī)整轉(zhuǎn)化, 裝載進統(tǒng)一的信息對象數(shù)據(jù)結(jié)構(gòu),方便后續(xù)處理。自適應(yīng)配置模塊根據(jù)目前所執(zhí)行的采集策略以及對磁盤陣列健康狀態(tài)的預(yù)測結(jié)果,自適應(yīng)的決定是否更換所執(zhí)行的采集策略。具體的說,即是否由第一套策略上升為第二 套策略,或者是否由第二套策略上升為第三套策略。數(shù)據(jù)存儲模塊負責將系統(tǒng)內(nèi)各種數(shù)據(jù)存儲進相應(yīng)的數(shù)據(jù)庫中,主要的數(shù)據(jù)包括 系統(tǒng)定時采集的磁盤陣列健康和性能參數(shù),承擔參數(shù)預(yù)測工作的人工神經(jīng)網(wǎng)絡(luò)的各種網(wǎng)絡(luò) 參數(shù),以及各種健康和性能參數(shù)的預(yù)測故障參考閾值等。自適應(yīng)指標預(yù)測模塊根據(jù)系統(tǒng)所確定的采集策略,利用最近一段時間的歷史數(shù) 據(jù)自適應(yīng)的構(gòu)建針對不同參數(shù)指標的多個故障預(yù)測神經(jīng)網(wǎng)絡(luò)。首先建立神經(jīng)網(wǎng)絡(luò),然后通 過統(tǒng)計一段時間內(nèi)系統(tǒng)的歷史健康和性能指標參數(shù),輸入神經(jīng)網(wǎng)絡(luò)以訓(xùn)練神經(jīng)網(wǎng)絡(luò)的權(quán) 值,達到訓(xùn)練結(jié)束條件后,就得到了針對某一指標的訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)。對于訓(xùn)練好的神經(jīng) 網(wǎng)絡(luò),輸入實時采集的前段時間的參數(shù)后,輸出得到下一時間單位的參數(shù)預(yù)測值。參考故障閾值模塊讀取磁盤陣列系統(tǒng)健康和性能參數(shù)的閾值,系統(tǒng)管理員可以 通過手工重新設(shè)置各參數(shù)的閾值。分析決策模塊對自適應(yīng)指標預(yù)測模塊輸出的參數(shù)預(yù)測值進行分析,根據(jù)所監(jiān)控 磁盤陣列的型號以及相關(guān)參數(shù)故障閾值信息,基于系統(tǒng)的計算模型進行綜合的分析計算, 得出所監(jiān)控磁盤陣列系統(tǒng)的健康狀態(tài),并根據(jù)系統(tǒng)所采用的監(jiān)控策略決策下一步的操作。用戶管理模塊負責對系統(tǒng)各級用戶的增加、刪除、授權(quán)以及用戶的認證,只有經(jīng) 過授權(quán)的用戶合法用戶才能查閱所監(jiān)控的磁盤陣列對象健康狀態(tài)信息。用戶的角色至少包 括系統(tǒng)管理員和普通用戶兩級,用戶需提交的信息包括但不限于姓名、部門、職位、電子郵 箱、移動電話、辦公電話等。用戶界面模塊是用戶與系統(tǒng)進行交互的界面,系統(tǒng)管理人員通過系統(tǒng)展示模塊 進行系統(tǒng)配置和系統(tǒng)管理。系統(tǒng)展示模塊通過各種報表、折線圖、拓撲圖等形式展示系統(tǒng)當 前及未來一段時間內(nèi)全局的健康狀態(tài)信息及磁盤陣列健康狀態(tài)的發(fā)展趨勢等。采用上述技術(shù)方案,本發(fā)明有益的技術(shù)效果在于通過建立針對磁盤陣列系統(tǒng)的 故障預(yù)測系統(tǒng),可以根據(jù)磁盤陣列的健康和性能參數(shù)的歷史數(shù)據(jù)推斷其未來的參數(shù)指標, 從而對磁盤陣列系統(tǒng)可能發(fā)生的故障進行提前預(yù)測。由于采用了一系列自適應(yīng)的技術(shù),既 能夠保證系統(tǒng)的性能,又能較好的保證系統(tǒng)的故障預(yù)測精度,從而有效的保護磁盤陣列系 統(tǒng)上所存儲的數(shù)據(jù)。
下面將結(jié)合附圖及實施例對本發(fā)明作進一步說明,附圖中圖1是本發(fā)明自適應(yīng)磁盤陣列故障預(yù)測方法及系統(tǒng)實施例的結(jié)構(gòu)框圖;圖2是本發(fā)明自適應(yīng)磁盤陣列故障預(yù)測方法及系統(tǒng)中用于參數(shù)預(yù)測的人工神經(jīng) 網(wǎng)絡(luò)的網(wǎng)絡(luò)拓撲圖;圖3是本發(fā)明自適應(yīng)磁盤陣列故障預(yù)測方法及系統(tǒng)中故障預(yù)測方法的流程圖。
具體實施例方式如圖1所示,是本發(fā)明自適應(yīng)磁盤陣列故障預(yù)測系統(tǒng)實施例的結(jié)構(gòu)框圖。根據(jù)該 框圖,本發(fā)明一種具體實施方式
中的自適應(yīng)磁盤陣列故障預(yù)測系統(tǒng)12需要通過互聯(lián)網(wǎng)絡(luò) 與磁盤陣列系統(tǒng)11以及外部告警系統(tǒng)13進行連接。磁盤陣列故障預(yù)測系統(tǒng)12實現(xiàn)磁盤
6陣列故障的分析和預(yù)測功能,該系統(tǒng)包括信息采集模塊121、自適應(yīng)配置模塊122、數(shù)據(jù)存 儲模塊123、自適應(yīng)指標預(yù)測模塊124、參考故障閾值模塊125、分析決策模塊126、用戶管理 模塊127以及用戶界面模塊128。信息采集模塊121提供對于磁盤陣列系統(tǒng)運行期間健康和性能參數(shù)的采集功能。 信息采集模塊121接收來自自適應(yīng)配置模塊122的配置策略信息,并按照設(shè)定的配置策略 對磁盤陣列系統(tǒng)11進行信息采集,采集的信息經(jīng)規(guī)格化后交由數(shù)據(jù)存儲模塊123進行處理。自適應(yīng)配置模塊122的功能是確定磁盤陣列系統(tǒng)的信息采集策略。自適應(yīng)配置模 塊122接收來自用戶界面模塊128的用戶輸入配置信息,以及來自分析決策模塊126的磁 盤陣列預(yù)測健康狀態(tài)信息,判斷是維持本級策略還是升級到更高一級策略,并依此向信息 采集模塊121發(fā)出控制指令。 數(shù)據(jù)存儲模塊123用于存儲系統(tǒng)內(nèi)的重要數(shù)據(jù)。數(shù)據(jù)存儲模塊接收來自信息采集 模塊121提供的磁盤陣列健康和性能參數(shù)信息,接收來自參考故障閾值模塊125提供的磁 盤陣列及與其故障相關(guān)的健康和性能參數(shù)閾值信息,接收來自用戶管理模塊127提供的用 戶、用戶組及權(quán)限信息,以及來自用戶界面模塊128的其它系統(tǒng)信息并存儲在數(shù)據(jù)庫中,供 自適應(yīng)指標預(yù)測模塊124、分析決策模塊126以及用戶界面模塊1 使用。自適應(yīng)指標預(yù)測模塊IM用于構(gòu)建針對各參數(shù)的基于人工神經(jīng)網(wǎng)絡(luò)的預(yù)測系統(tǒng) 并進行參數(shù)值的預(yù)測。自適應(yīng)指標預(yù)測模塊1 接收來自數(shù)據(jù)存儲模塊123的神經(jīng)網(wǎng)絡(luò)配 置信息以及磁盤陣列參數(shù)歷史數(shù)據(jù)用于訓(xùn)練針對該參數(shù)的故障預(yù)測網(wǎng)絡(luò),接收實時采集的 數(shù)據(jù)對未來的參數(shù)值進行預(yù)測。自適應(yīng)指標預(yù)測模塊1 輸出預(yù)測結(jié)果給分析決策模塊 126進行磁盤陣列故障預(yù)測,同時將預(yù)測結(jié)果輸出給數(shù)據(jù)存儲模塊123進行存儲。參考故障閾值模塊125接收來自用戶界面模塊128的故障閾值查詢和配置信息, 并輸出給數(shù)據(jù)存儲模塊123進行存儲。參考故障閾值模塊125輸出故障參數(shù)參考閾值給分 析決策模塊126進行計算分析。分析決策模塊1 提供對于磁盤陣列未來健康狀態(tài)信息的計算和分析,并決定是 否產(chǎn)生告警信息。分析決策模塊1 接收來自自適應(yīng)指標預(yù)測模塊1 的參數(shù)預(yù)測信息和 參考故障閾值模塊125的參數(shù)故障閾值信息,按照給定的計算模型進行計算分析后,給出 在當前策略下,磁盤陣列系統(tǒng)在未來一段時間內(nèi)運行健康狀態(tài)的信息。分析決策模塊126 輸出分析結(jié)果到自適應(yīng)配置模塊122,在預(yù)測出磁盤陣列的故障后,輸出告警信息到用戶界 面模塊128,同時輸出告警信息到外部告警系統(tǒng)13。用戶管理模塊127提供對于用戶和用戶組的增加、刪除、認證、授權(quán)和訪問控制等 功能。用戶管理單元127接收用戶的操作指令,并通過用戶界面單元1 展示相應(yīng)的操作結(jié)果。用戶界面模塊1 提供用戶與磁盤陣列故障預(yù)測系統(tǒng)之間的交互界面,并提供磁 盤陣列故障預(yù)測狀態(tài)的集中展示界面。用戶界面模塊1 接收來自用戶的命令輸入,并輸 出給用戶管理模塊127、參考故障閾值模塊125、自適應(yīng)指標預(yù)測模塊124、自適應(yīng)配置模塊 122以及數(shù)據(jù)存儲模塊123以用于系統(tǒng)的配置。用戶界面模塊1 接收來自數(shù)據(jù)存儲模塊 123的數(shù)據(jù)信息,根據(jù)用戶的查詢請求,生成相應(yīng)的統(tǒng)計報表和圖形展示給用戶。本發(fā)明所描述的自適應(yīng)磁盤陣列故障預(yù)測方法,包括如下主要步驟
按照粗參數(shù)粒度、粗時間粒度策略采集磁盤陣列的健康和性能指標參數(shù)并作為歷 史數(shù)據(jù)進行存儲;對每一個采集到的指標參數(shù),根據(jù)其歷史數(shù)據(jù)通過人工神經(jīng)網(wǎng)絡(luò)方法訓(xùn)練一參數(shù) 預(yù)測網(wǎng)絡(luò);利用訓(xùn)練好的參數(shù)預(yù)測網(wǎng)絡(luò)對磁盤陣列的健康和性能指標參數(shù)進行預(yù)測;將預(yù)測結(jié)果與粗參數(shù)粒度、粗時間粒度所對應(yīng)的第一參考閾值進行比較,按照給 定的計算模型進行計算和分析,如果判斷出磁盤陣列未來一段時間內(nèi)健康狀態(tài)良好,則可 以繼續(xù)按照粗參數(shù)粒度、粗時間粒度策略實施預(yù)測;反之,如果判斷出未來一段時間內(nèi)磁盤 陣列健康狀態(tài)將要開始惡化,則增加檢測參數(shù)至中參數(shù)粒度并縮短預(yù)測故障的時間粒度至 中時間粒度,以得到磁盤陣列系統(tǒng)更精確的故障預(yù)測信息;對增加檢測參數(shù)并縮短預(yù)測故障的時間粒度后的每一個新采集到的指標參數(shù),根 據(jù)其歷史數(shù)據(jù)通過人工神經(jīng)網(wǎng)絡(luò)方法重新訓(xùn)練參數(shù)預(yù)測網(wǎng)絡(luò);利用訓(xùn)練好的新的參數(shù)預(yù)測 網(wǎng)絡(luò)對磁盤陣列的健康和性能指標參數(shù)進行預(yù)測;將預(yù)測結(jié)果與對應(yīng)中參數(shù)粒度以及中時間粒度的第二參考閾值進行比較,按照給 定的計算模型進行計算和分析,如果判斷出磁盤陣列未來一段時間內(nèi)健康狀態(tài)良好,則可 以保持當前的檢測參數(shù)和時間粒度實施預(yù)測;反之,如果判斷出未來一段時間內(nèi)磁盤陣列 健康狀態(tài)將要進一步惡化,則進一步增加檢測參數(shù)至細參數(shù)粒度并縮短預(yù)測故障的時間粒 度至細時間粒度,以得到磁盤陣列系統(tǒng)更精確的健康信息;對每一個增加檢測參數(shù)并縮短預(yù)測故障的時間粒度后采集到的指標參數(shù),根據(jù)其 歷史數(shù)據(jù)通過人工神經(jīng)網(wǎng)絡(luò)方法訓(xùn)練參數(shù)預(yù)測網(wǎng)絡(luò);利用訓(xùn)練好的參數(shù)預(yù)測網(wǎng)絡(luò)對磁盤陣 列的健康和性能指標參數(shù)進行預(yù)測;將預(yù)測結(jié)果與第三參考閾值進行比較,按照給定的計算模型分析計算磁盤陣列系 統(tǒng)所處的健康狀態(tài)。當細粒度的檢測和故障預(yù)測顯示磁盤陣列系統(tǒng)即將發(fā)生故障時,則產(chǎn) 生報警信息,通知相關(guān)人員或者外部系統(tǒng)進行處理。本發(fā)明所述的磁盤陣列系統(tǒng)健康和性能參數(shù),至少包括磁盤數(shù)據(jù)讀取速度、磁盤 數(shù)據(jù)寫入速度、磁盤數(shù)據(jù)讀寫速度、錯誤讀取率、啟動/停止次數(shù)、重新分配扇區(qū)數(shù)、旋轉(zhuǎn)重 試次數(shù)、磁盤校準重試次數(shù)、ULTRA DMA奇偶校驗錯誤率、多區(qū)域錯誤率等。在本發(fā)明所述的磁盤陣列故障預(yù)測實現(xiàn)方法中,所指的給定的計算模型其具體計 算方法如下,這里設(shè)故障預(yù)測系統(tǒng)采集的磁盤陣列參數(shù)為Ai (i = 1,…,n),對于參數(shù)Ai (i =1,…,η),其對應(yīng)的閾值分別為Ti (i = 1,…,n),實際檢測值為Vi(i = 1,…,η):對于參數(shù)Ai (i = 1,...,11),計算參數(shù)距離比率0丨=油8(作丨-11)/11),其中油8() 表示取絕對值函數(shù)。距離比率表示磁盤參數(shù)實際測量值距離參數(shù)故障預(yù)測閾值的遠近,越 小則距離越近;計算包含所有檢測參數(shù)信息的總距離比率D = (Dl+…+Dn)/η。比較總距離比率D與參考總距離比率閾值Τ,(Τ為按照策略人為設(shè)定的值),如果 D > Τ,則磁盤陣列處于健康狀態(tài),如果D ≤ Τ,則啟動下一套策略或發(fā)出故障預(yù)警信號。對 于不同的操作策略,T的取值不相同,一般情況下,對于初始的參數(shù)粒度和時間粒度,可以取 T = O. 2,對于中間的參數(shù)粒度和時間粒度,可以取T = O. 1,對于最終的參數(shù)粒度和時間粒 度,可以取T = 0. 05。在本發(fā)明所述的磁盤陣列故障預(yù)測方法中,所涉及到利用人工神經(jīng)網(wǎng)絡(luò)的方法進行故障預(yù)測網(wǎng)絡(luò)的構(gòu)建?;舅枷胧峭ㄟ^神經(jīng)網(wǎng)絡(luò)BP學(xué)習(xí)算法(誤差反向傳播算法)來 刻畫磁盤陣列健康性能參數(shù)的變化趨勢,從而對參數(shù)作出預(yù)測,最后再根據(jù)綜合各種參數(shù) 的預(yù)測值,對磁盤陣列可能的故障進行預(yù)測。BP學(xué)習(xí)算法是一種有監(jiān)督的學(xué)習(xí)過程,它是根 據(jù)給定的(輸入,輸出)樣本對來進行學(xué)習(xí),并通過調(diào)整網(wǎng)絡(luò)連接權(quán)來體現(xiàn)學(xué)習(xí)的效果。就 整個神經(jīng)網(wǎng)絡(luò)來說,它有兩種狀態(tài)第一是學(xué)習(xí)階段先將學(xué)習(xí)樣本對的輸入加在網(wǎng)絡(luò)的輸入端,沿著前向(即輸入 層一輸出層)在各層神經(jīng)元按輸入和激勵函數(shù)的方式產(chǎn)生輸出。然后將輸出層神經(jīng)元的實 際輸出值和期望輸出值之差逆向(即輸出層一輸入層)傳播到各層神經(jīng)元,并根據(jù)誤差的 大小和符號相應(yīng)地調(diào)整各連接權(quán)值。此過程一直進行到神經(jīng)網(wǎng)絡(luò)權(quán)連接方式能夠給定輸入 樣本條件下以一定精度產(chǎn)生給定輸出結(jié)果為止,即認為學(xué)習(xí)階段結(jié)束;第二是工作階段當待測樣本輸入到已學(xué)習(xí)好的神經(jīng)網(wǎng)絡(luò)輸入端時,根據(jù)類似輸 入產(chǎn)生類似輸出的原則,神經(jīng)網(wǎng)絡(luò)按內(nèi)插或外延的方式在輸出端生成所求的解答來。如圖2所示,神經(jīng)網(wǎng)絡(luò)縱向分層,將神經(jīng)網(wǎng)絡(luò)第k層第i元素的輸入和記為々,輸出
記為Olc .將第k-1層i元素向第k層j元素的連接權(quán)值記為^fi設(shè)神經(jīng)元激勵函數(shù)為f,
9
這里f可選擇常用的神經(jīng)元激勵函數(shù),如S形函數(shù)。則神經(jīng)元激勵函數(shù)根據(jù)神經(jīng)元的輸入 計算產(chǎn)生神經(jīng)元的輸出,即有Of =/(/f)其中
權(quán)利要求
1.一種自適應(yīng)磁盤陣列故障預(yù)測方法,其特征在于包括如下主要步驟按照粗參數(shù)粒度、粗時間粒度策略采集一段時間內(nèi)的磁盤陣列的健康和性能指標參數(shù) 并建立每個指標參數(shù)的歷史數(shù)據(jù)庫;每個指標參數(shù)的歷史數(shù)據(jù)庫建立后,對每一個新采集到的指標參數(shù),根據(jù)其歷史數(shù)據(jù) 通過人工神經(jīng)網(wǎng)絡(luò)方法訓(xùn)練一參數(shù)預(yù)測網(wǎng)絡(luò);并利用訓(xùn)練好的參數(shù)預(yù)測網(wǎng)絡(luò)對磁盤陣列的 健康和性能指標參數(shù)進行初次預(yù)測;將初次預(yù)測的結(jié)果與一定參數(shù)粒度、一定時間粒度所對應(yīng)的一參考閾值進行比較,按 照給定的計算模型進行計算和分析,如果判斷出磁盤陣列未來一段時間內(nèi)健康狀態(tài)良好, 則可以繼續(xù)按照該參數(shù)粒度、時間粒度策略實施預(yù)測;如果判斷出未來一段時間內(nèi)磁盤陣 列健康狀態(tài)將要開始惡化,則增加檢測參數(shù)的粒度并縮短預(yù)測故障的時間粒度,以得到磁 盤陣列系統(tǒng)更精確的故障預(yù)測信息;再對增加檢測參數(shù)并縮短預(yù)測故障的時間粒度后的每一個新采集到的指標參數(shù),根據(jù) 其歷史數(shù)據(jù)通過人工神經(jīng)網(wǎng)絡(luò)方法重新訓(xùn)練參數(shù)預(yù)測網(wǎng)絡(luò),并利用訓(xùn)練好的新的參數(shù)預(yù)測 網(wǎng)絡(luò)對磁盤陣列的健康和性能指標參數(shù)進行預(yù)測,得到預(yù)測結(jié)果;將再次的預(yù)測結(jié)果與對應(yīng)增加的檢測參數(shù)粒度以及縮短的時間粒度的第二參考閾值 進行比較,按照給定的計算模型進行計算和分析,如果判斷出磁盤陣列未來一段時間內(nèi)健 康狀態(tài)良好,則可以保持當前的檢測參數(shù)和時間粒度實施預(yù)測;反之,如果判斷出磁盤陣列 系統(tǒng)即將發(fā)生故障時,則產(chǎn)生報警信息,通知相關(guān)人員或者外部系統(tǒng)進行處理。
2.根據(jù)權(quán)利要求1所述的自適應(yīng)磁盤陣列故障預(yù)測方法,其特征在于前述增加檢測參數(shù)粒度并縮短時間粒度的第二次預(yù)測可以有多次,如果在多次預(yù)測中 的任意一次判斷出磁盤陣列未來一段時間內(nèi)健康狀態(tài)良好,則可以保持當前的檢測參數(shù)和 時間粒度實施預(yù)測;如果判斷出未來一段時間內(nèi)磁盤陣列健康狀態(tài)將要進一步惡化,則進 一步增加檢測參數(shù)至細參數(shù)粒度并縮短預(yù)測故障的時間粒度至細時間粒度,以得到磁盤陣 列系統(tǒng)更精確的健康信息;直至判斷出磁盤陣列系統(tǒng)即將發(fā)生故障時,則產(chǎn)生報警信息,通 知相關(guān)人員或者外部系統(tǒng)進行處理。
3.根據(jù)權(quán)利要求1所述的自適應(yīng)磁盤陣列故障預(yù)測方法,其特征在于所述的磁盤陣 列系統(tǒng)健康和性能參數(shù),至少包括磁盤數(shù)據(jù)讀取速度、磁盤數(shù)據(jù)寫入速度、磁盤數(shù)據(jù)讀寫 速度、錯誤讀取率、啟動/停止次數(shù)、重新分配扇區(qū)數(shù)、旋轉(zhuǎn)重試次數(shù)、磁盤校準重試次數(shù)、 ULTRA DMA奇偶校驗錯誤率、多區(qū)域錯誤率等。
4.根據(jù)權(quán)利要求1所述的自適應(yīng)磁盤陣列故障預(yù)測方法,其特征在于所述的檢測參 數(shù)粒度和檢測時間粒度,可以由系統(tǒng)管理人員通過系統(tǒng)進行人工配置得到。
5.一種自適應(yīng)磁盤陣列故障預(yù)測系統(tǒng),與外部系統(tǒng)磁盤陣列系統(tǒng)和告警系統(tǒng)分別相 連,故障預(yù)測系統(tǒng)定期采集磁盤陣列的健康和性能參數(shù),通過系統(tǒng)內(nèi)部的參數(shù)預(yù)測和綜合 分析,在預(yù)測出磁盤陣列故障時向外部告警系統(tǒng)發(fā)出告警信號,由外部告警系統(tǒng)進行進一 步的處理;該磁盤陣列故障預(yù)測系統(tǒng)包括信息采集模塊定期采集磁盤陣列的健康和性能參數(shù)信息,通過數(shù)據(jù)的規(guī)整轉(zhuǎn)化,裝載 進統(tǒng)一的信息對象數(shù)據(jù)結(jié)構(gòu),方便后續(xù)處理;自適應(yīng)配置模塊根據(jù)目前所執(zhí)行的采集策略以及對磁盤陣列健康狀態(tài)的預(yù)測結(jié)果, 自適應(yīng)的決定是否更換所執(zhí)行的采集策略;數(shù)據(jù)存儲模塊負責將系統(tǒng)內(nèi)各種數(shù)據(jù)存入相應(yīng)的數(shù)據(jù)庫中; 自適應(yīng)指標預(yù)測模塊根據(jù)系統(tǒng)所確定的采集策略,利用最近一段時間的歷史數(shù)據(jù)自 適應(yīng)的構(gòu)建針對不同參數(shù)指標的多個故障預(yù)測神經(jīng)網(wǎng)絡(luò);其中首先建立神經(jīng)網(wǎng)絡(luò),然后通 過統(tǒng)計一段時間內(nèi)系統(tǒng)的歷史健康和性能指標參數(shù),輸入神經(jīng)網(wǎng)絡(luò)以訓(xùn)練神經(jīng)網(wǎng)絡(luò)的權(quán) 值,達到訓(xùn)練結(jié)束條件后,就得到了針對某一指標的訓(xùn)練好的神經(jīng)網(wǎng)絡(luò);對于訓(xùn)練好的神經(jīng) 網(wǎng)絡(luò),輸入實時采集的前段時間的參數(shù)后,輸出得到下一時間單位的參數(shù)預(yù)測值; 參考故障閾值模塊讀取磁盤陣列系統(tǒng)健康和性能參數(shù)的閾值; 分析決策模塊對自適應(yīng)指標預(yù)測模塊輸出的參數(shù)預(yù)測值進行分析,根據(jù)所監(jiān)控磁盤 陣列的型號以及相關(guān)參數(shù)故障閾值信息,基于系統(tǒng)的計算模型進行綜合的分析計算,得出 所監(jiān)控磁盤陣列系統(tǒng)的健康狀態(tài),并根據(jù)系統(tǒng)所采用的監(jiān)控策略決策下一步的操作;用戶管理模塊負責對系統(tǒng)各級用戶的增加、刪除、授權(quán)以及用戶的認證,只有經(jīng)過授 權(quán)的用戶合法用戶才能查閱所監(jiān)控的磁盤陣列對象健康狀態(tài)信息;以及,用戶界面模塊是用戶與系統(tǒng)進行交互的界面,系統(tǒng)管理人員通過系統(tǒng)展示模塊進行 系統(tǒng)配置和系統(tǒng)管理;系統(tǒng)展示模塊通過各種報表、折線圖、拓撲圖等形式展示系統(tǒng)當前及 未來一段時間內(nèi)全局的健康狀態(tài)信息及磁盤陣列健康狀態(tài)的發(fā)展趨勢等。
全文摘要
本發(fā)明公開了一種自適應(yīng)磁盤陣列故障預(yù)測方法及系統(tǒng),所述方法基于反向傳播神經(jīng)網(wǎng)絡(luò),通過神經(jīng)網(wǎng)絡(luò)具有的自學(xué)習(xí)機制,通過對能夠表征磁盤陣列健康狀態(tài)的參數(shù)的歷史數(shù)據(jù)的搜集,通過逼近的方法總結(jié)出能夠表征該參數(shù)隨時間變化的規(guī)律,從而對該參數(shù)值進行預(yù)測。本方法共設(shè)置了第一、第二、第三由低到高的三套參數(shù)采集策略,參數(shù)個數(shù)逐漸遞增而時間粒度逐漸遞減,并提出了一種根據(jù)預(yù)測參數(shù)值和參數(shù)故障閾值的計算磁盤陣列健康狀況的通用計算模型,從而能夠有效預(yù)測磁盤陣列故障情況。自適應(yīng)磁盤陣列故障預(yù)測系統(tǒng)包括信息采集模塊、自適應(yīng)配置模塊、數(shù)據(jù)存儲模塊、自適應(yīng)指標預(yù)測模塊、參考故障閾值模塊、分析決策模塊、用戶管理模塊和用戶界面模塊。
文檔編號G06N3/08GK102129397SQ20101061119
公開日2011年7月20日 申請日期2010年12月29日 優(yōu)先權(quán)日2010年12月29日
發(fā)明者戚建淮, 王明文 申請人:深圳市永達電子股份有限公司