一種擴展磁盤陣列的方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種擴展磁盤陣列(RAID)的方法,包括:當確定擴展RAID5時,根據(jù)行列變換規(guī)則對RAID?5的原磁盤的數(shù)據(jù)進行行列變換;按照平行四邊形規(guī)則,從RAID?5變換后的原磁盤中選出遷移數(shù)據(jù)填充至擴展磁盤;更新RAID?5原磁盤和擴展磁盤的校驗塊;填充RAID?5原磁盤和擴展磁盤中空缺位的數(shù)據(jù)。本發(fā)明還公開了一種擴展RAID的裝置,采用本發(fā)明能快速的完成數(shù)據(jù)移動,提高RAID的擴展效率。
【專利說明】一種擴展磁盤陣列的方法及裝置
【技術領域】
[0001]本發(fā)明涉及磁盤陣列(RAID,RedundantArrays of Inexpensive Disks)領域,尤其涉及一種擴展RAID的方法及裝置。
【背景技術】
[0002]RAID 5擴展為在現(xiàn)有磁盤的基礎上增加磁盤,這樣可以提高輸入輸出(1/0,Input/Output)端口性能也可以擴大它的存儲容量。RAID 5擴展使得RAID5能滿足應用需求,因為宕機成本極高,擴展中的RAID 5卷必須一邊重分布數(shù)據(jù)一邊處理應用I/O請求。目前,已有的RAID 5的擴展方法是在增加磁盤后保持循環(huán)順序移動現(xiàn)有磁盤中的所有數(shù)據(jù)。但是,上述RAID5的擴展方法中,由于需要移動所有數(shù)據(jù),因此較為耗時,且無法提高RAID5的擴展效率。
[0003]可見,現(xiàn)有技術中RAID5的擴展方法,無法快速的完成數(shù)據(jù)移動,無法提高RAID5的擴展效率。
【發(fā)明內容】
[0004]有鑒于此,本發(fā)明的目的在于提供一種擴展RAID的方法及裝置,能快速的完成數(shù)據(jù)移動,提高RAID的擴展效率。
[0005]為達到上述目的,本發(fā)明的技術方案是這樣實現(xiàn)的:
[0006]本發(fā)明提供了一種擴展RAID的方法,該方法包括:
[0007]當確定擴展RAID 5時,根據(jù)行列變換規(guī)則對RAID 5的原磁盤的數(shù)據(jù)進行行列變換;
[0008]按照平行四邊形規(guī)則,從RAID 5變換后的原磁盤中選出遷移數(shù)據(jù)填充至擴展磁盤;
[0009]更新RAID 5原磁盤和擴展磁盤的校驗塊;
[0010]填充RAID 5原磁盤和擴展磁盤中空缺位的數(shù)據(jù)。
[0011]上述方案中,所述行列變換規(guī)則,包括:
[0012]若RAID 5原磁盤的個數(shù)為M、擴展磁盤的個數(shù)為N,則將M塊磁盤分成多個M加N列的磁盤區(qū)域;逐個從各個磁盤區(qū)域中選出M行M列磁盤作為變換區(qū)域,將所述變換區(qū)域中最后一行的校驗位移至該行最左端位置處,再將變換區(qū)域內前M-1行的校驗位調整到主對角線位置。
[0013]上述方案中,所述平行四邊形規(guī)則為:從每行中取校驗位右邊的N位數(shù)據(jù)作為選出數(shù)據(jù)作為遷移數(shù)據(jù);將每列中選出的遷移數(shù)據(jù),填充至同列中的擴展磁盤中接近原磁盤的空位,且每列中的遷移數(shù)據(jù)之間相對位置不變;將校驗位調整至同一條主對角線位置;其中,N為擴展磁盤的個數(shù)。
[0014]上述方案中,所述更新擴展后的RAID 5的校驗塊,包括:
[0015]依次查看每一列是否有數(shù)據(jù)遷移,若沒有數(shù)據(jù)遷移,則不更新該列的校驗塊;[0016]若有數(shù)據(jù)遷移,則查看該列中遷移的數(shù)據(jù)是否有校驗塊,若沒有,則使用遷移的數(shù)據(jù)以及原校驗塊進行異或和得到新的校驗塊,將原校驗塊替換為新的校驗塊;若有,則使用遷移的數(shù)據(jù)進行異或和計算得到新的校驗塊,將原校驗塊替換為新的校驗塊。
[0017]上述方案中,所述填充,包括:使用高彈性函數(shù)計算空缺位的盤號和該盤上的物理塊號,并在空缺位中填寫數(shù)據(jù)。
[0018]上述方案中,所述填充RAID 5原磁盤和擴展磁盤中空缺位的數(shù)據(jù)之后,該方法還包括:RAID 5原磁盤和擴展磁盤對應的元數(shù)據(jù)進行懶惰更新。
[0019]上述方案中,所述懶惰更新為:實時檢測是否收到對RAID 5原磁盤和擴展磁盤寫請求,若收到,則查看寫請求對應的位置是否已完成元數(shù)據(jù)更新,若完成,則結束處理流程;若沒完成,則更新寫請求對應位置的元數(shù)據(jù)。
[0020]本發(fā)明還提供了一種擴展RAID的裝置,該裝置包括:變換模塊、遷移模塊、更新模塊和填充模塊;其中,
[0021]變換模塊,用于當確定擴展RAID 5時,根據(jù)行列變換規(guī)則對RAID 5的原磁盤的數(shù)據(jù)進行行列變換,通知遷移模塊進行數(shù)據(jù)遷移;
[0022]遷移模塊,用于收到變換模塊發(fā)來的數(shù)據(jù)遷移通知后,按照平行四邊形規(guī)則,從RAID 5變換后的原磁盤中選出遷移數(shù)據(jù)填充至擴展磁盤,通知更新模塊進行校驗塊更新;
[0023]更新模塊,用于收到遷移模塊發(fā)來的校驗塊更新的通知后,更新RAID 5原磁盤和擴展磁盤的校驗塊,通知填充模塊進行空缺填充;
[0024]填充模塊,用于收到更新模塊發(fā)來的空缺填充的通知后,填充RAID 5原磁盤和擴展磁盤中空缺位的數(shù)據(jù)。
[0025]上述方案中,所述變換模塊,具體用于保存行列變換規(guī)則;其中,所述行列變換規(guī)則包括:若RAID 5原磁盤的個數(shù)為M、擴展磁盤的個數(shù)為N,則將M塊磁盤分成多個M加N列的磁盤區(qū)域;逐個從各個磁盤區(qū)域中選出M行M列磁盤作為變換區(qū)域,將所述變換區(qū)域中最后一行的校驗位移至該行最左端位置處,再將變換區(qū)域內前M-1行的校驗位調整到主對角線位置。
[0026]上述方案中,所述遷移模塊,具體用于保存平行四邊形規(guī)則;其中,所述平行四邊形規(guī)則為:從每行中取校驗位右邊的N位數(shù)據(jù)作為選出數(shù)據(jù)作為遷移數(shù)據(jù);將每列中選出的遷移數(shù)據(jù),填充至同列中的擴展磁盤中接近原磁盤的空位,且每列中的遷移數(shù)據(jù)之間相對位置不變;將校驗位調整至同一條主對角線位置;其中,N為擴展磁盤的個數(shù)。
[0027]上述方案中,所述更新模塊,具體用于依次查看每一列是否有數(shù)據(jù)遷移,若沒有數(shù)據(jù)遷移,則不更新該列的校驗塊;若有數(shù)據(jù)遷移,則查看該列中遷移的數(shù)據(jù)是否有校驗塊,若沒有,則使用遷移的數(shù)據(jù)以及原校驗塊進行異或和得到新的校驗塊,將原校驗塊替換為新的校驗塊;若有,則使用遷移的數(shù)據(jù)進行異或和計算得到新的校驗塊,將原校驗塊替換為新的校驗塊。
[0028]上述方案中,所述填充模塊,具體用于使用高彈性函數(shù)計算空缺位的盤號和該盤上的物理塊號,并在空缺位中填寫數(shù)據(jù)。
[0029]上述方案中,所述裝置還包括:元數(shù)據(jù)更新模塊,用于對RAID 5原磁盤和擴展磁盤對應的元數(shù)據(jù)進行懶惰更新。
[0030]上述方案中,所述元數(shù)據(jù)更新模塊,具體用于實時檢測是否收到對RAID 5原磁盤和擴展磁盤寫請求,若收到,則查看寫請求對應的位置是否已完成元數(shù)據(jù)更新,若完成,則結束處理流程;若沒完成,則更新寫請求對應位置的元數(shù)據(jù)。
[0031]本發(fā)明所提供擴展RAID的方法及裝置,能夠根據(jù)行列變換規(guī)則對RAID 5的原磁盤的數(shù)據(jù)進行行列變換,再按照平行四邊形規(guī)則從RAID 5變換后的原磁盤中選出遷移數(shù)據(jù)填充至擴展磁盤;更新RAID 5原磁盤和擴展磁盤的校驗塊;填充RAID 5原磁盤和擴展磁盤中空缺位的數(shù)據(jù);如此,能夠避免現(xiàn)有技術中對全部數(shù)據(jù)進行移動帶來的影響RAID擴展效率的問題,僅對選出的數(shù)據(jù)進行遷移,實現(xiàn)快速遷移。
[0032]另外,使用本發(fā)明還能夠對RAID 5原磁盤和擴展磁盤對應的元數(shù)據(jù)進行懶惰更新,僅對收到寫請求的位置對應的元數(shù)據(jù)進行更新,從而減少元數(shù)據(jù)更新對擴展效率的影響,進一步提聞擴展效率。
【專利附圖】
【附圖說明】
[0033]圖1為本發(fā)明的擴展RAID的方法流程示意圖;
[0034]圖2為本發(fā)明的擴展RAID的裝置組成結構示意圖。
【具體實施方式】
[0035]本發(fā)明的基本思想是:當確定擴展RAID 5時,根據(jù)行列變換規(guī)則對RAID5的原磁盤的數(shù)據(jù)進行行列變換;按照平行四邊形規(guī)則,從RAID 5變換后的原磁盤中選出遷移數(shù)據(jù)填充至擴展磁盤;更新RAID 5原磁盤和擴展磁盤的校驗塊;填充RAID 5原磁盤和擴展磁盤中空缺位的數(shù)據(jù)。
[0036]下面結合附圖及具體實施例對本發(fā)明再作進一步詳細的說明。
[0037]本發(fā)明的擴展RAID的方法,如圖1所示,包括以下步驟:
[0038]步驟101:當確定擴展RAID 5時,根據(jù)行列變換規(guī)則對RAID 5的原磁盤的數(shù)據(jù)進行行列變換。
[0039]這里,所述擴展RAID 5為在RAID 5原磁盤的基礎上增加擴展磁盤,為現(xiàn)有技術,這里不做贅述;
[0040]所述行列變換規(guī)則為:若RAID原磁盤的個數(shù)為M、擴展磁盤的個數(shù)為N,則將M塊磁盤分成多個M加N列的磁盤區(qū)域;逐個從各個磁盤區(qū)域中選出M行M列磁盤作為變換區(qū)域,將所述變換區(qū)域中最后一行的校驗位移至該行最左端位置處,再將變換區(qū)域內前M-1行的校驗位調整到主對角線位置。
[0041]比如,假設當前磁盤個數(shù)為三,添加磁盤個數(shù)為二,則將三塊磁盤組成的RAID陣列,分為兩個三行五列的區(qū)域;選出左邊區(qū)域,在選出的區(qū)域內,將前三列的最后一行的校驗塊移至最左端,再將前三列中的第一行和第二行中的校驗塊依次調整值主對角線位置。
[0042]步驟102:按照平行四邊形規(guī)則,從RAID 5變換后的原磁盤中選出遷移數(shù)據(jù)填充
至擴展磁盤。
[0043]這里,所述平行四邊形規(guī)則為:從每行中取校驗位右邊的N位數(shù)據(jù)作為選出數(shù)據(jù)作為遷移數(shù)據(jù);將每列中選出的遷移數(shù)據(jù),填充至同列中的擴展磁盤中接近原磁盤的空位,且每列中的遷移數(shù)據(jù)之間相對位置不變;將校驗位調整至同一條主對角線位置;其中,N為擴展磁盤的個數(shù)。[0044]步驟103:更新RAID 5原磁盤和擴展磁盤的校驗塊。
[0045]這里,所述更新包括:依次查看每一列是否有數(shù)據(jù)遷移,若沒有數(shù)據(jù)遷移,則不更新該列的校驗塊;
[0046]若有數(shù)據(jù)遷移,則查看該列中遷移的數(shù)據(jù)是否有校驗塊,若沒有,則使用遷移的數(shù)據(jù)以及原校驗塊進行異或和得到新的校驗塊,將原校驗塊替換為新的校驗塊;若有,則使用遷移的數(shù)據(jù)進行異或和計算得到新的校驗塊,將原校驗塊替換為新的校驗塊。
[0047]步驟104:填充RAID 5原磁盤和擴展磁盤中空缺位的數(shù)據(jù)。
[0048]這里,所述填充包括:使用高彈性函數(shù)計算空缺位的盤號和該盤上的物理塊號,并在空缺位中填寫數(shù)據(jù);
[0049]其中,所述高彈性函數(shù)為:假設數(shù)據(jù)的位置盤號為d、列號為column,則column =(x-(m-l)*s)/n,X代表塊號,s代表每塊盤中數(shù)據(jù)塊的個數(shù),m為原磁盤的個數(shù),η為擴展磁盤個數(shù);d = (m+cl+remain) % (m+n);其中:remain = (x-(m_l)*s) % n ;cl = parityC%(m+n);
[0050]當每個區(qū)域中的前m列進行列變換,cl的值小于m時,則cl = (parityC% m+Δ ) %m, Δ代表行列變換的幅度為步驟101中的選出區(qū)域中最后一列中的校驗塊的位置和(m-1)之間的差值;cl代表塊號為X的數(shù)據(jù)塊在每個區(qū)域中的列號,大小為O到m+n-Ι之間的某個整數(shù)值;parityC為塊號為x的數(shù)據(jù)塊所在的列號;如果d的值小于m,則d = (dl+m- Δ ) %m0
[0051]上述步驟104完成后,還包括:RAID 5原磁盤和擴展磁盤對應的元數(shù)據(jù)進行懶惰更新。
[0052]其中,所述懶惰更新為:實時檢測是否收到對RAID 5原磁盤和擴展磁盤寫請求,若收到,則查看寫請求對應的位置是否已完成元數(shù)據(jù)更新,若完成,則結束處理流程;若沒完成,則更新寫請求對應位置的元數(shù)據(jù)。
[0053]如圖2所示,本發(fā)明提供了一種擴展RAID的裝置,該裝置包括:變換模塊21、遷移模塊22、更新模塊23和填充模塊24 ;其中,
[0054]變換模塊21,用于當確定擴展RAID 5時,根據(jù)行列變換規(guī)則對RAID 5的原磁盤的數(shù)據(jù)進行行列變換,通知遷移模塊22進行數(shù)據(jù)遷移;
[0055]遷移模塊22,用于收到變換模塊21發(fā)來的數(shù)據(jù)遷移通知后,按照平行四邊形規(guī)貝U,從RAID 5變換后的原磁盤中選出遷移數(shù)據(jù)填充至擴展磁盤,通知更新模塊23進行校驗塊更新;
[0056]更新模塊23,用于收到遷移模塊22發(fā)來的校驗塊更新的通知后,更新RAID5原磁盤和擴展磁盤的校驗塊,通知填充模塊24進行空缺填充;
[0057]填充模塊24,用于收到更新模塊23發(fā)來的空缺填充的通知后,填充RAID5原磁盤和擴展磁盤中空缺位的數(shù)據(jù)。
[0058]所述變換模塊21,具體用于保存行列變換規(guī)則;其中,所述行列變換規(guī)則為:若RAID原磁盤的個數(shù)為M、擴展磁盤的個數(shù)為N,則將M塊磁盤分成多個M加N列的磁盤區(qū)域;逐個從各個磁盤區(qū)域中選出M行M列磁盤作為變換區(qū)域,將所述變換區(qū)域中最后一行的校驗位移至該行最左端位置處,再將變換區(qū)域內前M-1行的校驗位調整到主對角線位置。
[0059]所述遷移模塊22,具體用于保存平行四邊形規(guī)則,其中,所述平行四邊形規(guī)則為:從每行中取校驗位右邊的N位數(shù)據(jù)作為選出數(shù)據(jù)作為遷移數(shù)據(jù);將每列中選出的遷移數(shù)據(jù),填充至同列中的擴展磁盤中接近原磁盤的空位,且每列中的遷移數(shù)據(jù)之間相對位置不變;將校驗位調整至同一條主對角線位置;其中,N為擴展磁盤的個數(shù)。
[0060]所述更新模塊23,具體用于依次查看每一列是否有數(shù)據(jù)遷移,若沒有數(shù)據(jù)遷移,則不更新該列的校驗塊;若有數(shù)據(jù)遷移,則查看該列中遷移的數(shù)據(jù)是否有校驗塊,若沒有,則使用遷移的數(shù)據(jù)以及原校驗塊進行異或和得到新的校驗塊,將原校驗塊替換為新的校驗塊;若有,則使用遷移的數(shù)據(jù)進行異或和計算得到新的校驗塊,將原校驗塊替換為新的校驗塊。
[0061]所述填充模塊24,具體用于使用高彈性函數(shù)計算空缺位的盤號和該盤上的物理塊號,并在空缺位中填寫數(shù)據(jù);其中,所述高彈性函數(shù)為:假設數(shù)據(jù)的位置盤號為d、列號為column,則column = (x_ (m_l) *s)/n, x代表塊號,s代表每塊盤中數(shù)據(jù)塊的個數(shù),m為原磁盤的個數(shù),η為擴展磁盤個數(shù);d= (m+cl+remain) % (m+n);其中:remain = (x-(m-l)*s) %n ;cl = parityC% (m+n);當每個區(qū)域中的前m列進行列變換,cl的值小于m時,貝Ij cl=(parityC% m+Δ) % m, Λ代表行列變換的幅度為:選出區(qū)域中最后一列中的校驗塊的位置和(m-Ι)之間的差值;Cl代表塊號為X的數(shù)據(jù)塊在每個區(qū)域中的列號,大小為O到m+n-1之間的某個整數(shù)值;parityC為塊號為x的數(shù)據(jù)塊所在的列號;如果d < m,則d =(dl+m- Δ ) % m。
[0062]所述裝置還包括:元數(shù)據(jù)更新模塊25,用于收到填充模塊24完成擴展的通知后,對RAID 5原磁盤和擴展磁盤對應的元數(shù)據(jù)進行懶惰更新;相應的,所述填充模塊24,還用于完成數(shù)據(jù)填充后,通知元數(shù)據(jù)更新模塊25完成擴展。
[0063]所述元數(shù)據(jù)更新模塊25,具體用于實時檢測是否收到對RAID 5原磁盤和擴展磁盤寫請求,若收到,則查看寫請求對應的位置是否已完成元數(shù)據(jù)更新,若完成,則結束處理流程;若沒完成,則更新寫請求對應位置的元數(shù)據(jù)。
[0064]以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。
【權利要求】
1.一種擴展磁盤陣列RAID的方法,其特征在于,該方法包括: 當確定擴展RAID 5時,根據(jù)行列變換規(guī)則對RAID 5的原磁盤的數(shù)據(jù)進行行列變換; 按照平行四邊形規(guī)則,從RAID 5變換后的原磁盤中選出遷移數(shù)據(jù)填充至擴展磁盤; 更新RAID 5原磁盤和擴展磁盤的校驗塊; 填充RAID 5原磁盤和擴展磁盤中空缺位的數(shù)據(jù)。
2.根據(jù)權利要求1所述的方法,其特征在于,所述行列變換規(guī)則,包括: 若RAID 5原磁盤的個數(shù)為M、擴展磁盤的個數(shù)為N,則將M塊磁盤分成多個M加N列的磁盤區(qū)域;逐個從各個磁盤區(qū)域中選出M行M列磁盤作為變換區(qū)域,將所述變換區(qū)域中最后一行的校驗位移至該行最左端位置處,再將變換區(qū)域內前M-1行的校驗位調整到主對角線位置。
3.根據(jù)權利要求1所述的方法,其特征在于,所述平行四邊形規(guī)則為:從每行中取校驗位右邊的N位數(shù)據(jù)作為選出數(shù)據(jù)作為遷移數(shù)據(jù);將每列中選出的遷移數(shù)據(jù),填充至同列中的擴展磁盤中接近原磁盤的空位,且每列中的遷移數(shù)據(jù)之間相對位置不變;將校驗位調整至同一條主對角線位置;其中,N為擴展磁盤的個數(shù)。
4.根據(jù)權利要求1所述的方法,其特征在于,所述更新擴展后的RAID5的校驗塊,包括: 依次查看每一列是否有數(shù)據(jù)遷移,若沒有數(shù)據(jù)遷移,則不更新該列的校驗塊; 若有數(shù)據(jù)遷移,則查看該列中遷移的數(shù)據(jù)是否有校驗塊,若沒有,則使用遷移的數(shù)據(jù)以及原校驗塊進行異或和得到新的校驗塊,將原校驗塊替換為新的校驗塊;若有,則使用遷移的數(shù)據(jù)進行異或和計算得到新的校驗塊,將原校驗塊替換為新的校驗塊。
5.根據(jù)權利要求1所述的方法,其特征在于,所述填充,包括:使用高彈性函數(shù)計算空缺位的盤號和該盤上的物理塊號,并在空缺位中填寫數(shù)據(jù)。
6.根據(jù)權利要求1所述的方法,其特征在于,所述填充RAID5原磁盤和擴展磁盤中空缺位的數(shù)據(jù)之后,該方法還包括=RAID 5原磁盤和擴展磁盤對應的元數(shù)據(jù)進行懶惰更新。
7.根據(jù)權利要求6所述的方法,其特征在于,所述懶惰更新為:實時檢測是否收到對RAID 5原磁盤和擴展磁盤寫請求,若收到,則查看寫請求對應的位置是否已完成元數(shù)據(jù)更新,若完成,則結束處理流程;若沒完成,則更新寫請求對應位置的元數(shù)據(jù)。
8.一種擴展RAID的裝置,其特征在于,該裝置包括:變換模塊、遷移模塊、更新模塊和填充模塊;其中, 變換模塊,用于當確定擴展RAID 5時,根據(jù)行列變換規(guī)則對RAID 5的原磁盤的數(shù)據(jù)進行行列變換,通知遷移模塊進行數(shù)據(jù)遷移; 遷移模塊,用于收到變換模塊發(fā)來的數(shù)據(jù)遷移通知后,按照平行四邊形規(guī)則,從RAID 5變換后的原磁盤中選出遷移數(shù)據(jù)填充至擴展磁盤,通知更新模塊進行校驗塊更新; 更新模塊,用于收到遷移模塊發(fā)來的校驗塊更新的通知后,更新RAID 5原磁盤和擴展磁盤的校驗塊,通知填充模塊進行空缺填充; 填充模塊,用于收到更新模塊發(fā)來的空缺填充的通知后,填充RAID 5原磁盤和擴展磁盤中空缺位的數(shù)據(jù)。
9.根據(jù)權利要求8所述的裝置,其特征在于, 所述變換模塊,具體用于保存行列變換規(guī)則;其中,所述行列變換規(guī)則包括:若RAID 5原磁盤的個數(shù)為M、擴展磁盤的個數(shù)為N,則將M塊磁盤分成多個M加N列的磁盤區(qū)域;逐個從各個磁盤區(qū)域中選出M行M列磁盤作為變換區(qū)域,將所述變換區(qū)域中最后一行的校驗位移至該行最左端位置處,再將變換區(qū)域內前M-1行的校驗位調整到主對角線位置。
10.根據(jù)權利要求8所述的裝置,其特征在于, 所述遷移模塊,具體用于保存平行四邊形規(guī)則;其中,所述平行四邊形規(guī)則為:從每行中取校驗位右邊的N位數(shù)據(jù)作為選出數(shù)據(jù)作為遷移數(shù)據(jù);將每列中選出的遷移數(shù)據(jù),填充至同列中的擴展磁盤中接近原磁盤的空位,且每列中的遷移數(shù)據(jù)之間相對位置不變;將校驗位調整至同一條主對角線位置;其中,N為擴展磁盤的個數(shù)。
11.根據(jù)權利要求8所述的裝置,其特征在于, 所述更新模塊,具體用于依次查看每一列是否有數(shù)據(jù)遷移,若沒有數(shù)據(jù)遷移,則不更新該列的校驗塊;若有數(shù)據(jù)遷移,則查看該列中遷移的數(shù)據(jù)是否有校驗塊,若沒有,則使用遷移的數(shù)據(jù)以及原校驗塊進行異或和得到新的校驗塊,將原校驗塊替換為新的校驗塊;若有,則使用遷移的數(shù)據(jù)進行異或和計算得到新的校驗塊,將原校驗塊替換為新的校驗塊。
12.根據(jù)權利要求8所述的裝置,其特征在于, 所述填充模塊,具體用于使用高彈性函數(shù)計算空缺位的盤號和該盤上的物理塊號,并在空缺位中填寫數(shù)據(jù)。
13.根據(jù)權利要求8所述的裝置,其特征在于,所述裝置還包括:元數(shù)據(jù)更新模塊,用于對RAID 5原磁盤和擴展磁盤對應的元數(shù)據(jù)進行懶惰更新。
14.根據(jù)權利要求13所述的裝置,其特征在于,所述元數(shù)據(jù)更新模塊,具體用于實時檢測是否收到對RAID 5原磁盤和擴展磁盤寫請求,若收到,則查看寫請求對應的位置是否已完成元數(shù)據(jù)更新,若完成,則結束處理流程;若沒完成,則更新寫請求對應位置的元數(shù)據(jù)。
【文檔編號】G06F3/06GK103927122SQ201310010938
【公開日】2014年7月16日 申請日期:2013年1月11日 優(yōu)先權日:2013年1月11日
【發(fā)明者】張廣艷, 戴慶軍, 王繼剛, 秦長鵬 申請人:中興通訊股份有限公司