本發明專利技術提供一種磁盤陣列數據重構的方法,首先對寫過的區域做標記,做過標記的區域的數據被認為是有效數據,當有盤失效后添加熱備進行重構;沒有標記的數據即認為是無效數據,不進行重構。該一種磁盤陣列數據重構的方法和現有技術相比,可加快磁盤陣列數據重構,降低再次磁盤失效的概率,大大提高了系統可靠性。
【技術實現步驟摘要】
本專利技術涉及計算機
,具體涉及。
技術介紹
對于具有冗余校驗信息的RAID5系統,RAID5新創建時各成員盤數據并不能保證條帶數據是一致性的.數據的不一致性使得系統無法按照正常流程處理主機IO請求, 所得到的校驗數據可能是錯誤的,因此這些級別的RAID5創建時必須先進行一致性初始化工作。RAID5是支持一塊盤失效的情況,當一塊盤失效,出現降級的情況,加入熱備盤進行恢復,也相當于要進行一致性校驗,任務必須遍歷成員盤的所有數據,這是一項非常耗時的工作,并且隨著磁盤的容量的增大,這個過程需要的時間就會更長。在這個過程中,如果再出現另一塊盤失效的話,那么由于RAID5的冗余機制,無法再進行恢復了,整個陣列就會失效。因此這個過程時間越長的話,再次有盤失效的概率就越大。因此有必要找到一種方法加快對失效盤的數據重構。
技術實現思路
本專利技術的技術任務是針對在現有技術的不足,提供。本專利技術的技術方案是按以下方式實現的,該,該方法的具體步驟為首先對寫過的區域做標記,做過標記的區域的數據被認為是有效數據,當有盤失效后添加熱備進行重構;沒有標記的數據即認為是無效數據,不進行重構。所述標記信息保存在非易失性內存中。所述標記用位圖來表不在創建RAID時,設置一個位圖,存放在磁盤的尾部,位圖中一個位表示對應的區域是否出現過寫數據。所述位圖中的一個位表示一個或幾個條帶的數據區域,RAID啟動后,就把這些記錄存放到非易失性內存中,并初始化為0,該標記位圖的區域有寫請求時,就把位圖對應的位設置為1,當RAID5發生降級,即出現單個成員盤失效,并添加熱備盤進行重構時,根據位圖狀態判斷是否重構如果為I則進行重構,如果為O則直接跳過,判斷下一個區域。本專利技術與現有技術相比所產生的有益效果是本專利技術的可加快磁盤陣列數據重構,降低再次磁盤失效的概率,方便RAID5的恢復過程,不影響使用性能,大大提高了系統可靠性。附圖說明附圖I是本專利技術的寫數據流程示意圖。附圖2是本專利技術的數據重構流程示意圖。具體實施方式下面結合附圖對本專利技術所提供的作以下詳細說明。,該方法的實現過程為首先對寫過的區域做標記, 做過標記的區域的數據被認為是有效數據,當有盤失效后添加熱備進行重構;沒有標記的數據即認為是無效數據,不進行重構。本專利技術考慮磁盤不同區域訪問性能不同的特點,出于對性能的優化,一個標記表示區域的大小是可變的;也可以經過設置重新改變。為了不影響正常的IO請求,本專利技術把標記信息保存到非易失性內存,斷電后不能丟失;另外,也對保存的標記進行判斷,如果無效,就把所有盤上的數據都按照有效數據進行重構。所述標記用位圖來表不創建RAID的時候,設置一個標記位圖,存放在磁盤的尾部,位圖中每一位表示對應的一個較大區塊是否已出現過寫數據。在本專利技術,一位代表一個或幾個條帶的數據區域。RAID啟動后,就把這些記錄存放到非易失性內存中,并初始化為O。考慮到如果一位代表一個條帶的數據區域,對于2T的盤需要64M,占用內存太大。所以, 要改變一個位表示的粒度。另外,考慮到重構是按順序執行,在順序讀寫情況下,磁盤外圈的數據訪問要比內圈快,所以,本專利技術對磁盤外圈的粒度表示要比內圈的粒度表示要大,這樣會讓內圈減少請求,內圈的請求越少,重構效率就越高。為了簡化起見,本專利技術設置一個默認狀態,把數據區按條帶分成8等分,最底部是靠近內圈的數據,一位代表一個條帶;向上的部分是一位代表兩個條帶的數據,依次類推,一直到一個位表示16個條帶為止。也可以在創建的時候進行配置,可以指定哪個區域細化,根據內存情況,可以讓每個區域代表一個或多個條帶,也可以設置成內圈與外圈的位圖表示的粒度是相同的。寫請求處理的流程為條帶寫操作引起的上述對該位圖的位的更新操作必須在條帶寫請求之前完成,為了防止斷電,必須要及時保護位圖,但如果同步到磁盤,就會影響性能,因此,可以把位圖保存到非易失性內存中去,以保護系統出現意外斷電時位圖數據是正確的。如附圖I所示,這個階段的流程如下O計算要寫的條帶對應的扇區是在哪個區域,判斷位圖對應的位是否設置I。如果設置1,直接跳到第3)步,如果沒有,就執行下一步。2)把對應的位設置1,把條帶放在一個延遲鏈表延遲處理,把位圖放到非易失性內存中。3)當確認位圖寫完之后,就處理真正的要寫的條帶。如圖2所示,發生失效后的恢復處理流程如下當RAID-5發生降級,即出現單個成員盤失效,并添加熱備盤進行重構時,根據位圖狀態判斷是否重構。如果置I則進行重構,如果為O則直接跳過,判斷下一個區域。本專利技術設置一個標記st0p_right,可以判斷是正常停止還是異常停止;如果是正常停止,那么系統通過停止處理流程將位圖刷寫到磁盤,并把st0p_right設置為1,當 RAID再啟動后,判斷stop_right為I,從磁盤中直接獲取位圖信息,然后把stop_right設置為O。如果是非正常停止,stop_right還是O,當RAID再啟動后,判斷stop_right為O, 則從非易失性內存中讀取位圖。權利要求1.,其特征在于該方法的具體步驟為首先對寫過的區域做標記,做過標記的區域的數據被認為是有效數據,當有盤失效后添加熱備進行重構;沒有標記的數據即認為是無效數據,不進行重構。2.根據權利要求I所述的,其特征在于所述標記信息保存在非易失性內存中。3.根據權利要求I或2所述的,其特征在于所述標記用位圖來表示在創建RAID時,設置一個位圖,存放在磁盤的尾部,位圖中一個位表示對應的區域是否出現過寫數據。4.根據權利要求3所述的,其特征在于所述位圖中的一個位表示一個或幾個條帶的數據區域,RAID啟動后,就把這些記錄存放到非易失性內存中,并初始化為O,該標記位圖的區域有寫請求時,就把位圖對應的位設置為1,當RAID5發生降級,即出現單個成員盤失效,并添加熱備盤進行重構時,根據位圖狀態判斷是否重構如果為I則進行重構,如果為O則直接跳過,判斷下一個區域。全文摘要本專利技術提供,首先對寫過的區域做標記,做過標記的區域的數據被認為是有效數據,當有盤失效后添加熱備進行重構;沒有標記的數據即認為是無效數據,不進行重構。該和現有技術相比,可加快磁盤陣列數據重構,降低再次磁盤失效的概率,大大提高了系統可靠性。文檔編號G06F3/06GK102981936SQ20121045929公開日2013年3月20日 申請日期2012年11月15日 優先權日2012年11月15日專利技術者古世磊, 閆永剛 申請人:浪潮電子信息產業股份有限公司本文檔來自技高網...
【技術保護點】
一種磁盤陣列數據重構的方法,其特征在于該方法的具體步驟為:首先對寫過的區域做標記,做過標記的區域的數據被認為是有效數據,當有盤失效后添加熱備進行重構;沒有標記的數據即認為是無效數據,不進行重構。
【技術特征摘要】
【專利技術屬性】
技術研發人員:古世磊,閆永剛,
申請(專利權)人:浪潮電子信息產業股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。