亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種raid數(shù)據(jù)處理方法及裝置制造方法

文檔序號:6511949閱讀:228來源:國知局
一種raid數(shù)據(jù)處理方法及裝置制造方法
【專利摘要】本發(fā)明提供一種RAID數(shù)據(jù)處理方法及對應(yīng)的裝置,應(yīng)用于計(jì)算機(jī)系統(tǒng)上,該方法包括:對于寫命令,當(dāng)故障成員磁盤數(shù)量小于或等于m時,確定該寫命令需要寫入的數(shù)據(jù)單元;使用相同有限域校驗(yàn)算法更新當(dāng)前條帶上所有可以訪問且需要寫入的數(shù)據(jù)單元以及校驗(yàn)單元;對于讀命令,當(dāng)故障成員磁盤數(shù)量小于或等于m時,確定該讀命令對應(yīng)的數(shù)據(jù)單元,若需要讀取的數(shù)據(jù)單元位于正常狀態(tài)的成員磁盤上,從該數(shù)據(jù)單元中讀取對應(yīng)的用戶數(shù)據(jù),若需要讀取的數(shù)據(jù)單元位于故障成員磁盤上,則根據(jù)當(dāng)前可訪問的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù)使用所述有限域校驗(yàn)算法恢復(fù)出用戶數(shù)據(jù)。本發(fā)明極大提高了RAID實(shí)現(xiàn)的靈活性,同時大幅降低了算法開發(fā)實(shí)現(xiàn)難度。
【專利說明】-種RAID數(shù)據(jù)處理方法及裝置

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)存儲【技術(shù)領(lǐng)域】,尤其涉及一種RAID數(shù)據(jù)處理方法及裝置。

【背景技術(shù)】
[0002] 獨(dú)立磁盤冗余陣列(Redundant Array of Independent disks, RAID)是一種把多 個獨(dú)立的物理磁盤(disk)組合起來形成的一個磁盤組,因此可以向用戶主機(jī)提供比單個磁 盤更高的存儲性能,并可提供數(shù)據(jù)備份功能。根據(jù)不同的數(shù)據(jù)組織方式,常用的RAID包括 RAID0、RAID1、RAID5、RAID6、RAIDlO等多種級別。RAID中包括有以下的技術(shù)定義。
[0003] 條帶:把連續(xù)的數(shù)據(jù)分割成等大小的數(shù)據(jù)塊,把每個數(shù)據(jù)塊的數(shù)據(jù)按照RAID算法 寫入到RAID的成員磁盤上。連續(xù)數(shù)據(jù)等長分割后的數(shù)據(jù)塊稱為條帶,數(shù)據(jù)塊大小稱為條帶 大小。
[0004] 條塊:每個條帶的數(shù)據(jù)分布到多個成員磁盤上,條帶在每個成員磁盤上占用的空 間大小稱為條塊。
[0005] 數(shù)據(jù)單元:表示用于存放用戶數(shù)據(jù)的條塊。
[0006] 校驗(yàn)單元:表示用于存放校驗(yàn)數(shù)據(jù)的條塊。
[0007] 校驗(yàn)組:一個條帶中,由多個數(shù)據(jù)單元和一個校驗(yàn)單元組成的集合,校驗(yàn)單元中的 校驗(yàn)數(shù)據(jù)由該條帶中數(shù)據(jù)單元的用戶數(shù)據(jù)通過RAID校驗(yàn)算法計(jì)算得到。
[0008] RAID同步:通過RAID校驗(yàn)算法,計(jì)算出校驗(yàn)數(shù)據(jù)并寫入校驗(yàn)單元的處理過程。
[0009] RAID重建:在RAID成員磁盤故障或拔出后,通過RAID算法,計(jì)算故障磁盤或被拔 出磁盤中數(shù)據(jù),并寫入重建盤,恢復(fù)RAID數(shù)據(jù)冗余性的過程。
[0010] 為了避免單個磁盤故障導(dǎo)致數(shù)據(jù)丟失,存儲系統(tǒng)通常使用RAID技術(shù)對數(shù)據(jù)進(jìn)行 保護(hù)。對于冗余RAID,RAID可容忍的故障磁盤數(shù)目取決于RAID級別。磁盤故障后可觸發(fā) 重建,即,使用熱備盤替換故障磁盤,通過RAID重建算法把故障盤中的數(shù)據(jù)重構(gòu)到熱備盤 上,恢復(fù)RAID的冗余性。常見的冗余RAID算法包括:
[0011] RAID5算法:支持1個磁盤發(fā)生故障數(shù)據(jù)不丟失,RAID5可用容量=(n-l)X最小 成員磁盤容量,其中η指成員磁盤數(shù)目。
[0012] RAID6算法:支持2個磁盤同時發(fā)生故障數(shù)據(jù)不丟失,RAID6可用容量=(η-2) X 最小成員磁盤容量,其中η指成員磁盤數(shù)目。
[0013] RAIDlO算法:支持非同一個鏡像對中多個磁盤同時發(fā)生故障數(shù)據(jù)不丟失,RAIDlO 可用容量=(η/2) X磁盤最小容量,其中η指成員磁盤數(shù)目。
[0014] 請參考圖1,RAID6算法可以保證,一個條帶上2個磁盤同時發(fā)生介質(zhì)錯誤時,仍 然可以通過該條帶上其他磁盤的數(shù)據(jù)重構(gòu)出故障磁盤的數(shù)據(jù)。其他級別的RAID也有自身 的優(yōu)勢和缺點(diǎn),比如說RAIDlO可以支持非同一個鏡像對中多個磁盤同時發(fā)生故障數(shù)據(jù)不 丟失,但是其容量利用率只有1/2,因此從投資回報(bào)率來看,RAIDlO并不是一個理想選擇; 而且RAIDlO無法解決同一個鏡像對中2個磁盤同時發(fā)生故障的情況,存在數(shù)據(jù)丟失的風(fēng) 險(xiǎn)。RAID5算法容量利用率高,但是僅支持1個磁盤故障,數(shù)據(jù)丟失的風(fēng)險(xiǎn)系數(shù)有相對較高。 RAID6算法容量利用率介于RAIDlO和RAID5之間,但是因?yàn)樾r?yàn)數(shù)據(jù)采用兩種不同算法計(jì) 算得到,算法層面的實(shí)現(xiàn)相當(dāng)復(fù)雜,另外,RAID6不支持大于2個磁盤同時發(fā)生故障,在對可 靠性要求較高的場景中,RAID6的靈活性和擴(kuò)展性相對較差。


【發(fā)明內(nèi)容】

[0015] 有鑒于此,本發(fā)明提供一種RAID數(shù)據(jù)處理裝置,應(yīng)用于計(jì)算機(jī)系統(tǒng)上,該RAID包 括n+m個成員磁盤,其中η為一個RAID條帶中數(shù)據(jù)單元的數(shù)量,m為一個RAID條帶中校驗(yàn) 單元的數(shù)量;或者說η為RAID中數(shù)據(jù)盤的數(shù)量,m為校驗(yàn)盤的數(shù)量,其中η和m均為自然數(shù); 該裝置包括寫處理模塊以及讀處理單元,其中:
[0016] 寫處理模塊,用于處理來自用戶側(cè)的寫命令,當(dāng)故障成員磁盤數(shù)量小于或等于m 時,確定該寫命令對應(yīng)的當(dāng)前條帶中需要寫入的數(shù)據(jù)單元;使用相同的有限域校驗(yàn)算法更 新當(dāng)前條帶上所有可以訪問且需要寫入的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù),其中不同的校 驗(yàn)單元中的校驗(yàn)數(shù)據(jù)不同;
[0017] 讀處理模塊,用于處理來自用戶側(cè)的讀命令,當(dāng)故障成員磁盤數(shù)量小于或等于m 時,確定該讀命令對應(yīng)的當(dāng)前條帶中需要讀取的數(shù)據(jù)單元,若需要讀取的數(shù)據(jù)單元位于正 常狀態(tài)的成員磁盤上,從該數(shù)據(jù)單元中讀取對應(yīng)的用戶數(shù)據(jù),若需要讀取的數(shù)據(jù)單元位于 故障成員磁盤上,則根據(jù)當(dāng)前可訪問的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù)使用所述有限域校 驗(yàn)算法恢復(fù)出需要讀取的用戶數(shù)據(jù)。
[0018] 本發(fā)明還提供一種RAID數(shù)據(jù)處理方法,應(yīng)用于計(jì)算機(jī)系統(tǒng)上,該RAID包括n+m個 成員磁盤,其中η為一個RAID條帶中數(shù)據(jù)單元的數(shù)量,m為一個RAID條帶中校驗(yàn)單元的數(shù) 量,η和m均為自然數(shù);其中該方法包括以下步驟:
[0019] 步驟A、處理來自用戶側(cè)的寫命令,當(dāng)故障成員磁盤數(shù)量小于或等于m時,確定該 寫命令對應(yīng)的當(dāng)前條帶中需要寫入的數(shù)據(jù)單元;使用相同的有限域校驗(yàn)算法更新當(dāng)前條帶 上所有可以訪問且需要寫入的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù),其中不同的校驗(yàn)單元中的 校驗(yàn)數(shù)據(jù)不同;
[0020] 步驟B、處理來自用戶側(cè)的讀命令,當(dāng)故障成員磁盤數(shù)量小于或等于m時,確定該 讀命令對應(yīng)的當(dāng)前條帶中需要讀取的數(shù)據(jù)單元,若需要讀取的數(shù)據(jù)單元位于正常狀態(tài)的成 員磁盤上,從該數(shù)據(jù)單元中讀取對應(yīng)的用戶數(shù)據(jù),若需要讀取的數(shù)據(jù)單元位于故障成員磁 盤上,則根據(jù)當(dāng)前可訪問的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù)使用所述有限域校驗(yàn)算法恢復(fù) 出需要讀取的用戶數(shù)據(jù)。
[0021] 相較于現(xiàn)有技術(shù),本發(fā)明實(shí)現(xiàn)了一個RAID條帶提供m個校驗(yàn)組,且不同校驗(yàn)組使 用相同校驗(yàn)算法來實(shí)現(xiàn)數(shù)據(jù)校驗(yàn),極大地提高了 RAID實(shí)現(xiàn)的靈活性,可以提供更多級別數(shù) 據(jù)可靠性,適應(yīng)更多細(xì)分的用戶需求,并且解決了現(xiàn)有技術(shù)中每個校驗(yàn)組均使用不同算法 所引發(fā)的算法開發(fā)實(shí)現(xiàn)困難問題,以及使用不同算法導(dǎo)致計(jì)算系統(tǒng)性能消耗嚴(yán)重的問題。

【專利附圖】

【附圖說明】
[0022] 圖1是現(xiàn)有技術(shù)中RAID6內(nèi)數(shù)據(jù)組織關(guān)系示例性示意圖。
[0023] 圖2是本發(fā)明一種實(shí)施方式中RAID數(shù)據(jù)處理裝置的邏輯結(jié)構(gòu)及基本硬件環(huán)境示 意圖。
[0024] 圖3是本發(fā)明一種實(shí)施方式中RAID內(nèi)數(shù)據(jù)組織關(guān)系示例性示意圖。

【具體實(shí)施方式】
[0025] 針對現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明提出一種全新的RAID實(shí)現(xiàn)方案,使用單一算法支持 多個磁盤同時發(fā)生故障時,仍然能夠恢復(fù)數(shù)據(jù),且對多個故障盤無邏輯上的要求,提升RAID 使用的靈活性和健壯性。請參考圖2,在優(yōu)選的實(shí)施方式中,本發(fā)明提供一種應(yīng)用于計(jì)算機(jī) 系統(tǒng)上的RAID數(shù)據(jù)處理裝置,其中該RAID包括n+m個成員磁盤,其中η為一個RAID條帶 中數(shù)據(jù)單元的數(shù)量,m為一個RAID條帶中校驗(yàn)單元的數(shù)量,η和m均為自然數(shù)。該RAID處 理裝置包括:寫處理模塊以及讀處理模塊。所述計(jì)算機(jī)系統(tǒng)指包括有若干個成員磁盤的設(shè) 備,其可能是任意形式的計(jì)算系統(tǒng),比如工作站,或者服務(wù)器,或者專用的網(wǎng)絡(luò)存儲設(shè)備,甚 至可能是個人主機(jī)。需要說明的是RAID數(shù)據(jù)處理裝置可以使用軟件實(shí)現(xiàn),也可以使用硬件 實(shí)現(xiàn),比如RAID插卡等形式,甚至可以使用軟硬結(jié)合的方式實(shí)現(xiàn)。
[0026] 所述寫處理模塊,用于處理來自用戶側(cè)的寫命令,當(dāng)故障成員磁盤數(shù)量小于或等 于m時,確定該寫命令對應(yīng)的當(dāng)前條帶中需要寫入的數(shù)據(jù)單元;使用相同的有限域校驗(yàn)算 法更新當(dāng)前條帶上所有可以訪問且需要寫入的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù),其中不同 的校驗(yàn)單元中的校驗(yàn)數(shù)據(jù)不同;
[0027] 所述讀處理模塊,用于處理來自用戶側(cè)的讀命令,當(dāng)故障成員磁盤數(shù)量小于或等 于m時,確定該讀命令對應(yīng)的當(dāng)前條帶中需要讀取的數(shù)據(jù)單元,若需要讀取的數(shù)據(jù)單元位 于正常狀態(tài)的成員磁盤上,從該數(shù)據(jù)單元中讀取對應(yīng)的用戶數(shù)據(jù),若需要讀取的數(shù)據(jù)單元 位于故障成員磁盤上,則根據(jù)當(dāng)前可訪問的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù)使用所述有限 域校驗(yàn)算法恢復(fù)出需要讀取的用戶數(shù)據(jù)。
[0028] 以下通過實(shí)例來介紹本發(fā)明的具體實(shí)施,在本發(fā)明中,RAID的級別可以由開發(fā)者 或者標(biāo)準(zhǔn)組織重新定義。本發(fā)明使用有限域校驗(yàn)算法進(jìn)行數(shù)據(jù)校驗(yàn)和恢復(fù)以改善RAID校 驗(yàn)算法的缺陷。以下以伽羅瓦域運(yùn)算為例進(jìn)行說明,伽羅瓦域是一種典型有限域,在這個域 上的算術(shù)運(yùn)算是封閉的,伽羅瓦域乘法就是在這種域中的兩個單元的乘積,結(jié)果也必定在 相同的域中。
[0029] 如前所述η表示一個RAID條帶中的數(shù)據(jù)單元個數(shù),m表示一個RAID條帶中的校 驗(yàn)單元個數(shù),即該RAID能容忍的故障磁盤數(shù)目的上限。除了 η和m之外,還引入位寬w這 個參數(shù),以下沒有特別說明的情況下,各個表征數(shù)量的參數(shù)均為大于或等于零的整數(shù)。伽羅 瓦域的位寬w :其常用的域?yàn)镚F(28),該域的位寬為8,即該域中的所有元素都是一個字節(jié)。
[0030] RAID中的上述參數(shù)通常需要滿足算式(1)和(2)的基本約束條件:
[0031] η 彡 m (1)
[0032] 2W ^ n+m (2)
[0033] 在用戶數(shù)據(jù)與校驗(yàn)數(shù)據(jù)的關(guān)系上,本發(fā)明RAID中每個校驗(yàn)單元由該條帶中數(shù)據(jù) 單元通過伽羅瓦域乘法計(jì)算出來;每個條帶上一共有m個校驗(yàn)組,其中第i個校驗(yàn)組的表達(dá) 式為算式(3):
[0034] Ci = ailD1+ai2D2+ai3D3+. . . +ajjDj+. . . +ainDn (3)
[0035] 其中i=(l,2. . . m),ai j是伽羅瓦域中的常數(shù),ai jDj表示常數(shù)ai j和用戶數(shù)據(jù)Dj 進(jìn)行伽羅瓦域乘法運(yùn)算,' + '表示伽羅瓦域加法運(yùn)算,而Ci表示校驗(yàn)數(shù)據(jù)。其中所述m個校 驗(yàn)組的表達(dá)式中使用的常數(shù)可以表達(dá)為一個m行η列的矩陣,在本發(fā)明中該矩陣稱為RAID 常數(shù)矩陣,該RAID常數(shù)矩陣中的元素由選定伽羅瓦域中的常數(shù)確定,具體如算式(4)式所 示:

【權(quán)利要求】
1. 一種RAID數(shù)據(jù)處理裝置,應(yīng)用于計(jì)算機(jī)系統(tǒng)上,該RAID包括n+m個成員磁盤,其中 η為一個RAID條帶中數(shù)據(jù)單元的數(shù)量,m為一個RAID條帶中校驗(yàn)單元的數(shù)量,η和m均為 自然數(shù);該裝置包括寫處理模塊以及讀處理單元,其特征在于: 寫處理模塊,用于處理來自用戶側(cè)的寫命令,當(dāng)故障成員磁盤數(shù)量小于或等于m時,確 定該寫命令對應(yīng)的當(dāng)前條帶中需要寫入的數(shù)據(jù)單元;使用相同的有限域校驗(yàn)算法更新當(dāng)前 條帶上所有可以訪問且需要寫入的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù),其中不同的校驗(yàn)單元 中的校驗(yàn)數(shù)據(jù)不同; 讀處理模塊,用于處理來自用戶側(cè)的讀命令,當(dāng)故障成員磁盤數(shù)量小于或等于m時,確 定該讀命令對應(yīng)的當(dāng)前條帶中需要讀取的數(shù)據(jù)單元,若需要讀取的數(shù)據(jù)單元位于正常狀態(tài) 的成員磁盤上,從該數(shù)據(jù)單元中讀取對應(yīng)的用戶數(shù)據(jù),若需要讀取的數(shù)據(jù)單元位于故障成 員磁盤上,則根據(jù)當(dāng)前可訪問的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù)使用所述有限域校驗(yàn)算法 恢復(fù)出需要讀取的用戶數(shù)據(jù)。
2. 如權(quán)利要求1所述的裝置,其特征在于:所述有限域校驗(yàn)算法為伽羅瓦域運(yùn)算。
3. 如權(quán)利要求2所述的裝置,其特征在于:更新當(dāng)前條帶上所有可以訪問且需要寫入 用戶數(shù)據(jù)的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù)的過程具體包括: 若所有成員磁盤都正常且該條帶的數(shù)據(jù)單元均需要寫入用戶數(shù)據(jù),根據(jù)需要寫入的用 戶數(shù)據(jù)使用所述有限域校驗(yàn)算法計(jì)算出m個不同的校驗(yàn)數(shù)據(jù); 若所有數(shù)據(jù)單元所在成員磁盤都正常且存在無需寫入的數(shù)據(jù)單元,則回讀該數(shù)據(jù)單元 中的數(shù)據(jù),根據(jù)回讀用戶數(shù)據(jù)以及需要寫入的用戶數(shù)據(jù)使用所述有限域校驗(yàn)算法計(jì)算出m 個不同的校驗(yàn)數(shù)據(jù); 若故障成員磁盤數(shù)量等于m且所有校驗(yàn)單元均位于故障成員磁盤上,將需要寫入的用 戶數(shù)據(jù)寫入到當(dāng)前條帶上需要寫入的數(shù)據(jù)單元中; 若故障成員磁盤數(shù)量小于或等于m,且至少一個不可訪問的數(shù)據(jù)單元位于故障成員磁 盤上,對于不可訪問且無需寫入的數(shù)據(jù)單元,根據(jù)所述有限域校驗(yàn)算法恢復(fù)出對應(yīng)的用戶 數(shù)據(jù),對于可訪問且無需寫入的數(shù)據(jù)單元從該數(shù)據(jù)單元回讀出用戶數(shù)據(jù),根據(jù)需要寫入的 用戶數(shù)據(jù)、恢復(fù)出的用戶數(shù)據(jù)以及回讀出的用戶數(shù)據(jù)使用有限域校驗(yàn)算法計(jì)算出u個校驗(yàn) 數(shù)據(jù),其中u為可訪問的校驗(yàn)單元的數(shù)量; 將需要寫入的用戶數(shù)據(jù)以及計(jì)算出的校驗(yàn)數(shù)據(jù)分別寫入到可訪問且需要寫入的數(shù)據(jù) 單元以及可訪問的校驗(yàn)單元中。
4. 如權(quán)利要求2或3所述的裝置,其特征在于:所述有限域校驗(yàn)算法中計(jì)算校驗(yàn)數(shù)據(jù) 的算式為: Ci =ailD1+ai2D2+ai3D3+. . . +BijDj+. . . +ainDn 其中i為小于等于m的自然數(shù),j為小于等于η的自然數(shù),aij是伽羅瓦域中的常數(shù),aijDj表示常數(shù)aij和用戶數(shù)據(jù)Dj進(jìn)行伽羅瓦域乘法運(yùn)算,' + '表示伽羅瓦域加法運(yùn)算,而 Ci表示校驗(yàn)數(shù)據(jù)。
5. 如權(quán)利要求4所述的裝置,其特征在于:所述aij所構(gòu)成的m行η列的RAID常數(shù)矩 陣是滿秩的,且該矩陣的任意子矩陣也是滿秩的。
6. 如權(quán)利要求5所述的裝置,其特征在于:當(dāng)校驗(yàn)單元均可訪問時,使用有限域校驗(yàn)算 法恢復(fù)出用戶數(shù)據(jù)的算式具體為:
其中A' 4表示不可訪問數(shù)據(jù)單元在常數(shù)矩陣中對應(yīng)的常數(shù)組成的子矩陣A'的逆矩 陣;A*表示所有可訪問的數(shù)據(jù)單元在常數(shù)矩陣中常數(shù)組成的子矩陣;D*和C分別對應(yīng)可訪 問的數(shù)據(jù)單元和校驗(yàn)單元中的數(shù)據(jù);DX對應(yīng)需要恢復(fù)的數(shù)據(jù)單元中的數(shù)據(jù)。
7. 如權(quán)利要求5所述的裝置,其特征在于:當(dāng)部分校驗(yàn)數(shù)據(jù)可訪問時,使用有限域校驗(yàn) 算法恢復(fù)出用戶數(shù)據(jù)或校驗(yàn)數(shù)據(jù)的算式具體為:
兵干A' 1衣不個~WN數(shù)據(jù)早兀仕'吊'數(shù)圯卩牛中對應(yīng)的常數(shù)組成的子矩陣A'的逆矩 陣;A*表示所有可訪問的數(shù)據(jù)單元在常數(shù)矩陣中常數(shù)組成的子矩陣;D*和C*對應(yīng)可訪問 的數(shù)據(jù)單元和校驗(yàn)單元中數(shù)據(jù);DX對應(yīng)需要恢復(fù)的數(shù)據(jù)單元中數(shù)據(jù);Cy對應(yīng)需要恢復(fù)的校 驗(yàn)單元中數(shù)據(jù)。
8. 如權(quán)利要求2所述的裝置,其特征在于:所述伽羅瓦域的位寬為w,w為自然數(shù),其中 所述η大于等于m,η與m之和小于等于2的w次方。
9. 一種RAID數(shù)據(jù)處理方法,應(yīng)用于計(jì)算機(jī)系統(tǒng)上,該RAID包括n+m個成員磁盤,其中 η為一個RAID條帶中數(shù)據(jù)單元的數(shù)量,m為一個RAID條帶中校驗(yàn)單元的數(shù)量,η和m均為 自然數(shù);其特征在于,該方法包括以下步驟: 步驟A、處理來自用戶側(cè)的寫命令,當(dāng)故障成員磁盤數(shù)量小于或等于m時,確定該寫命 令對應(yīng)的當(dāng)前條帶中需要寫入的數(shù)據(jù)單元;使用相同的有限域校驗(yàn)算法更新當(dāng)前條帶上所 有可以訪問且需要寫入的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù),其中不同的校驗(yàn)單元中的校驗(yàn) 數(shù)據(jù)不同; 步驟B、處理來自用戶側(cè)的讀命令,當(dāng)故障成員磁盤數(shù)量小于或等于m時,確定該讀命 令對應(yīng)的當(dāng)前條帶中需要讀取的數(shù)據(jù)單元,若需要讀取的數(shù)據(jù)單元位于正常狀態(tài)的成員磁 盤上,從該數(shù)據(jù)單元中讀取對應(yīng)的用戶數(shù)據(jù),若需要讀取的數(shù)據(jù)單元位于故障成員磁盤上, 則根據(jù)當(dāng)前可訪問的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù)使用所述有限域校驗(yàn)算法恢復(fù)出需 要讀取的用戶數(shù)據(jù)。
10. 如權(quán)利要求9所述的方法,其特征在于:所述有限域校驗(yàn)算法為伽羅瓦域運(yùn)算。
11.如權(quán)利要求10所述的方法,其特征在于:更新當(dāng)前條帶上所有可以訪問且需要寫 入用戶數(shù)據(jù)的數(shù)據(jù)單元以及校驗(yàn)單元中的數(shù)據(jù)的過程具體包括: 若所有成員磁盤都正常且該條帶的數(shù)據(jù)單元均需要寫入用戶數(shù)據(jù),根據(jù)需要寫入的用 戶數(shù)據(jù)使用所述有限域校驗(yàn)算法計(jì)算出m個不同的校驗(yàn)數(shù)據(jù); 若所有數(shù)據(jù)單元所在成員磁盤都正常且存在無需寫入的數(shù)據(jù)單元,則回讀該數(shù)據(jù)單元 中的數(shù)據(jù),根據(jù)回讀用戶數(shù)據(jù)以及需要寫入的用戶數(shù)據(jù)使用所述有限域校驗(yàn)算法計(jì)算出m 個不同的校驗(yàn)數(shù)據(jù); 若故障成員磁盤數(shù)量等于m且所有校驗(yàn)單元均位于故障成員磁盤上,將需要寫入的用 戶數(shù)據(jù)寫入到當(dāng)前條帶上需要寫入的數(shù)據(jù)單元中; 若故障成員磁盤數(shù)量小于或等于m,且至少一個不可訪問的數(shù)據(jù)單元位于故障成員磁 盤上,對于不可訪問且無需寫入的數(shù)據(jù)單元,根據(jù)所述有限域校驗(yàn)算法恢復(fù)出對應(yīng)的用戶 數(shù)據(jù),對于可訪問且無需寫入的數(shù)據(jù)單元從該數(shù)據(jù)單元回讀出用戶數(shù)據(jù),根據(jù)需要寫入的 用戶數(shù)據(jù)、恢復(fù)出的用戶數(shù)據(jù)以及回讀出的用戶數(shù)據(jù)使用有限域校驗(yàn)算法計(jì)算出U個校驗(yàn) 數(shù)據(jù),其中U為可訪問的校驗(yàn)單元的數(shù)量; 將需要寫入的用戶數(shù)據(jù)以及計(jì)算出的校驗(yàn)數(shù)據(jù)分別寫入到可訪問且需要寫入的數(shù)據(jù) 單元以及可訪問的校驗(yàn)單元中。
12. 如權(quán)利要求10或11所述的方法,其特征在于:所述有限域校驗(yàn)算法中計(jì)算校驗(yàn)數(shù) 據(jù)的算式為: Ci =ailD1+ai2D2+ai3D3+. . . +BijDj+. . . +ainDn 其中i為小于等于m的自然數(shù),j為小于等于η的自然數(shù),aij是伽羅瓦域中的常數(shù),aijDj表示常數(shù)aij和用戶數(shù)據(jù)Dj進(jìn)行伽羅瓦域乘法運(yùn)算,' + '表示伽羅瓦域加法運(yùn)算,而 Ci表示校驗(yàn)數(shù)據(jù)。
13. 如權(quán)利要求12所述的方法,其特征在于:所述aij所構(gòu)成的m行η列的RAID常數(shù) 矩陣是滿秩的,且該矩陣的任意子矩陣也是滿秩的。
14. 如權(quán)利要求13所述的方法,其特征在于:當(dāng)校驗(yàn)單元均可訪問時,使用有限域校驗(yàn) 算法恢復(fù)出用戶數(shù)據(jù)的算式具體為:
其中A' 4表示不可訪問數(shù)據(jù)單元在常數(shù)矩陣中對應(yīng)的常數(shù)組成的子矩陣A'的逆矩 陣;A*表示所有可訪問的數(shù)據(jù)單元在常數(shù)矩陣中常數(shù)組成的子矩陣;D*和C對應(yīng)可訪問的 數(shù)據(jù)單元和校驗(yàn)單元中數(shù)據(jù);DX對應(yīng)需要恢復(fù)的數(shù)據(jù)。
15. 如權(quán)利要求13所述的方法,其特征在于:當(dāng)部分校驗(yàn)數(shù)據(jù)可訪問時,使用有限域校 驗(yàn)算法恢復(fù)出用戶數(shù)據(jù)或校驗(yàn)數(shù)據(jù)的算式具體為:
其中A' 4表示不可訪問數(shù)據(jù)單元在常數(shù)矩陣中對應(yīng)的常數(shù)組成的子矩陣A'的逆矩 陣;A*表示所有可訪問的數(shù)據(jù)單元在常數(shù)矩陣中常數(shù)組成的子矩陣;D*和C*對應(yīng)可訪問 的數(shù)據(jù)單元和校驗(yàn)單元中數(shù)據(jù);DX對應(yīng)需要恢復(fù)的數(shù)據(jù)單元中數(shù)據(jù);Cy對應(yīng)需要恢復(fù)的校 驗(yàn)單元中數(shù)據(jù)。
16. 如權(quán)利要求10所述的方法,其特征在于:所述伽羅瓦域的位寬為w,w為自然數(shù),其 中所述η大于等于m,η與m之和小于等于2的w次方。
【文檔編號】G06F3/06GK104461373SQ201310423447
【公開日】2015年3月25日 申請日期:2013年9月16日 優(yōu)先權(quán)日:2013年9月16日
【發(fā)明者】邱華 申請人:杭州宏杉科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1