新四季網

一種raid級別變換方法和變換裝置的製作方法

2023-05-11 19:41:51

專利名稱:一種raid級別變換方法和變換裝置的製作方法
技術領域:
本發明實施例涉及磁碟存儲領域,尤其涉及一種RAID級別變換方法和變換裝置。
背景技術:
獨立冗餘磁碟陣列(RAID,RedundantArrayofIndependentDisks)或廉價冗餘磁 盤陣列(RAID,RedundantArray of Independent Disks)本質上是一種在經過一定方式組合
而成的多個物理磁碟上同時存儲和讀取數據的磁碟體系,其目的是在於減少錯誤、提高 可靠度和大幅度增加存儲系統的數據吞吐量。按照實現方式或功能的不同,RAID具有 不同的級別(level)。例如,若採用數據分割技術(DataStriping)實現同時對多個磁碟進 行讀寫操作,可以構成級別為O的RAID(RAIDO);再如,若採用磁碟鏡像(DiskMirror) 技術以實現將一個磁碟的內容同步備份複製到另一個磁碟裡,可以構成級別為1的 RAID (RAID 1);或者,將實現RAID O和RAID 1的技術結合,可以構成級別為10的 RAID (RAID 10 或 RAID 1+0)等等。為了滿足用戶的不同需求,採用RAID的存儲系統應該具有改變RAID級別的功 能,即RAID級別變換;一旦RAID級別發生變換,其中的邏輯單元號(LUN,LogicUnit Number)所佔空間可能發生變化。現有技術一種實現RAID級別變換的方法是計算整個 RAID的剩餘空間,判斷該剩餘空間是否足以支持進行本次RAID級別變換時所需空間; 若滿足,則從第一個LUN起,順次判斷各單個LUN的剩餘空間,若當前某個LUN的剩 餘空間滿足該LUN進行級別變換時所需空間,則對該LUN實施級別變換;若當前LUN 的剩餘空間不滿足進行級別變換時所需空間,則累加計算從該當前LUN起N個LUN的 剩餘空間得到一個累加值,當該累加值足夠該N個LUN進行級別變換時所需空間,則逆 序將該N個LUN依次進行級別變換。發明人在對上述現有技術的長期研究和實踐中發現,實現RAID級別變換時受限 於諸多條件,缺乏靈活性;同時,現有技術在數據為空時仍然為其分配空間進行級別變 換,在具體實現時顯然耗費了系統的資源和時間較大。

發明內容
本發明實施例提供一種RAID級別變換方法,解決現有技術在進行RAID級別變 換時缺乏靈活性、耗費系統資源和時間的問題。一種RAID級別變換方法,包括判斷系統剩餘可用空間是否滿足當前邏輯單元號進行RAID級別變換時所需的空 間變化量;若滿足,則讀取當前邏輯單元號的原映射表以及RAID級別變換後的布局表;判斷所述原映射表反映的磁碟單元中數據佔用為空或非空,若所述磁碟單元中 數據佔用為空,則將當前邏輯單元號的RAID級別變換後的新映射表中對應的邏輯單元項設置為規定值;否則,根據RAID級別變換 後的布局表和所述原映射表,判斷進行RAID 級別變換後所述磁碟單元中數據所需複製位置與進行RAID級別變換前的位置是否屬於同 一物理磁碟,並根據判斷結果進行映射表修改或數據搬移。一種RAID級別變換裝置,包括判斷模塊,用於判斷系統剩餘可用空間是否滿足當前邏輯單元號進行RAID級別 變換時所需的空間變化量;表讀取模塊,用於所述判斷模塊判斷系統剩餘可用空間滿足當前邏輯單元號進 行RAID級別變換時所需的空間變化量時,讀取所述當前邏輯單元號的原映射表和RAID 結構發生變化後的布局表;數據處理模塊,用於根據所述表讀取模塊讀取的原映射表反映的磁碟單元中數 據佔用為空或非空,在所述磁碟單元中數據佔用為空時將當前邏輯單元號的RAID級別變 換後的新映射表中對應的邏輯單元項設置為規定值;否則,根據RAID級別變換後的布 局表和所述原映射表,判斷進行RAID級別變換後所述磁碟單元中數據所需複製位置與進 行RAID級別變換前的位置是否屬於同一物理磁碟,並根據判斷結果進行映射表修改或數 據搬移。本發明實施例通過判斷系統剩餘可用空間能夠滿足當前邏輯單元號進行RAID級 別變換時所需的空間變化量後,根據該當前LUN的原映射表和RAID結構發生變化後的 布局表,分別對所述原映射表反映的磁碟單元中數據佔用為空或非空進行不同的處理並 以此創建當LUN的新映射表,從而完成RAID級別變換。由於本發明實施例可以針對任 何LUN進行RAID級別變換,增強了 RAID級別變換的靈活性;同時,對處於同一物理 磁碟的相同數據不進行搬移,減少了數據處理量,而且,對數據佔用為空的磁碟單元在 RAID級別變換過程中不再進行物理空間的分配也提高了 RAID中磁碟空間的利用率。


圖1是本發明實施例提供的RAID級別變換方法基本流程圖;圖2是本發明實施例提供的將整個物理磁碟空間劃分成離散的物理磁碟單元示 意圖;圖3A是本發明實施例提供的RAID 10的布局表示意圖;圖3B是本發明實施例提供的RAID 0的布局表示意圖;圖4是本發明實施例提供的RAID 0的映射表示意圖;圖5是本發明實施例提供的RAID級別變換前LUN的映射表示意圖;圖6是本發明實施例提供的RAID級別變換裝置基本邏輯結構示意圖。
具體實施例方式本發明實施例提供RAID級別變換方法,通過判斷系統剩餘可用空間能夠滿足 當前單個LUN進行RAID級別變換時所需的空間變化量後,根據該LUN的原映射表和 RAID結構發生變化後的布局表,分別對所述原映射表反映的磁碟單元中數據佔用為空或 非空進行不同的處理並以此創建當前LUN的新映射表,從而完成RAID級別變換。本發 明實施例還提供相應的RAID級別變換裝置。以下分別進行詳細說明。
請參閱圖1,本發明實施例提供的RAID級別變換方法基本流程圖,包括步驟S101,判斷系統剩餘可用空間是否滿足當前LUN進行RAID級別變換時所
需的空間變化量。如前所述,RAID的級別發生變化或變換RAID級別時,該RAID中的LUN所佔
空間與RAID的級別發生變化前所佔空間 相比會發生變化,例如,所佔空間增大或所佔空 間減小。若增大的空間或減小的空間不在系統剩餘可用空間之內,則系統剩餘可用空間 不足以支持一次RAID級別變換,即可能導致RAID級別變換失敗。因此,有必要在實 施RAID級別變換時判斷系統剩餘可用空間是否滿足當前單個LUN進行RAID級別變換 時所需的空間變化量。在本發明實施例中,判斷的方法可以是SlOl 1,查詢各個物理磁碟未使用的磁碟單元以得到系統剩餘可用空間。各個物理磁碟未使用的磁碟單元可以以隊列(queue)的形式存在,因此,實際上 可以通過訪問隊列獲知各個物理磁碟未使用的磁碟單元,這些未使用的磁碟單元的總和 構成了系統剩餘可用空間。S1012,計算當前LUN進行RAID級別變換時所需的空間增大或減少量。此為 公知技術,不做贅述。S1013,若LUN所佔空間增大或減少量小於上述系統剩餘可用空間,則判斷系 統剩餘可用空間滿足當前LUN進行RAID級別變換時所需的空間增大或減少量,從而可 以進行RAID級別變換;否則,判斷系統剩餘可用空間不滿足當前LUN進行RAID級別 變換時所需的空間增大或減少量,RAID級別變換可能失敗。此處尚需說明的是,本發明實施例是針對LUN進行RAID進行級別變換(當 針對所有LUN進行RAID級別變換完成後,RAID級別變換隨之完成),不必計算整個 RAID級別變換所需空間。因此,本發明實施例並不受限於判斷系統剩餘可用空間是否滿 足整個RAID級別變換所需空間,與現有技術相比,進行RAID級別變換的靈活性顯著增強。步驟S102,若系統剩餘可用空間滿足當前LUN進行RAID級別變換時所需的空 間變化量,則讀取當前LUN的原映射表和RAID結構發生變化後的布局表。在本發明提供的實施例中,至少需要維護兩類表RAID的布局表和LUN的映 射表,其中,映射表的內容或結構依賴於布局表,即可以根據布局表生成與LUN對應的 映射表。以下分別對該兩類表做說明。布局表的結構或內容取決於存儲系統中的物理磁碟和邏輯磁碟(或虛擬磁碟), 並且,在存儲系統上電或插拔磁碟等等事件發生時,會重新生成RAID級別對應的布局 表。布局表的結構或內容與RAID中的物理磁碟和邏輯磁碟實際上密切關聯,以下舉例 說明之。在本發明提供的實施例中,可以將整個物理磁碟空間劃分成為離散的物理磁碟 單元(DU,Disk Unit)並以此組成緩衝池。每個物理DU以DU號標識,即DU號表示該 DU所屬物理磁碟和該DU在所屬物理磁碟內的偏移,而物理磁碟以磁碟身份證號表示。 如圖2所示,在構成RAID的x+1個物理磁碟中,假設將第2個物理磁碟(磁碟身份證號 為2)劃分為m+1個物理DU,則DU號為2:0的DU表示該DU屬於磁碟身份證號為2的物理磁碟,其在該物理磁碟內的偏移為O ;再如,DU號為2:5的DU表示該DU屬於磁碟身份證號為2的物理磁碟,其在該物理磁碟內的偏移為5等等。用戶可以根據需要,將構成RAID的物理磁碟設置為若干個邏輯磁碟,此後,構 成RAID的物理磁碟就以邏輯磁碟呈現給用戶,用戶可以不必知道實際的物理磁碟。進 一步地,每一個邏輯磁碟具有邏輯磁碟單元,即邏輯DU,並且,某個邏輯DU總是對應 於某個物理DU,這樣,邏輯磁碟就與整個物理磁碟空間對應。下面以6個物理磁碟(磁碟身份證號為0、1、…、4、5)和4個邏輯磁碟(LD, Logic Disk)LDO, LDU LD2和LD3為例來說明RAID的布局表。請參閱圖3A和圖3B,分別示出了級別為10的RAID (RAID 10)的布局表和級別 為0或5的RAID (RAID 0或RAID 5)的布局表。圖3A或圖3B的布局表中每一列表示 一個邏輯磁碟,每一行表示一個邏輯磁碟條帶(LDS,Logic Disk Stripe),而每一格表示 一個邏輯DU,其中的數字表示該邏輯DU所對應的物理DU所屬磁碟單元。請繼續參閱圖4,本發明實施例提供的RAIDO的LUN的映射表。一個LUN的 映射表記錄了該LUN中每一個邏輯DU對應的物理DU所屬物理磁碟和該物理DU在其所 屬物理磁碟內的偏移。例如,對於圖4,由邏輯磁碟2(LD2)和邏輯磁碟條帶2(LDS2)確 定的邏輯DU,其記錄值為DU 4:1,即表示該邏輯DU對應的物理DU屬於物理磁碟身份 證號為4的物理磁碟,並處於該物理磁碟內偏移為1的位置。由於在本發明實施例中,採 用寫時分配技術(allocate-on-write),即當一個邏輯DU有1\0寫請求時,才為該邏輯DU 分配一個物理DU。如此,在LUN的映射表中,當一個邏輯DU尚未分配與之對應的物 理DU時,可以將該邏輯DU的記錄值初始化為一個規定值,例如,初始化為Oxffffffff等寸。在本發明提供的實施例中,為了實現RAID級別變換,應該讀取當前單個LUN 的原映射表和RAID結構發生變化後的布局表。步驟S103,針對當前LUN的原映射表反映的磁碟單元中數據佔用為空或非空, 根據RAID結構發生變化後的布局表和所述原映射表,分別對磁碟單元中數據佔用為空或 非空進行不同的處理並以此創建當前LUN的新映射表。在本發明實施例中,應該創建一張當前單個LUN的新映射表。當獲取了當前單 個LUN的原映射表和RAID結構發生變化後的布局表時,可以依據兩張表中的內容,以 原映射表中的邏輯DU為單位,對新映射表的表項賦記錄值,此處又分為兩種情況,以下 分別說明其處理方式的不同。情況一若當前單個LUN的原映射表反映的某個磁碟單元中數據佔用為空,例如,圖4 所示LD2和LDSl確定的邏輯DU,其記錄值為Oxffffffff,表明該邏輯DU對應的磁碟單 元中數據佔用為空,則在新映射表對應的表項賦記錄值為一個規定值,例如,Oxffffffff等寸。情況二若當前單個LUN的原映射表反映的某個磁碟單元中數據佔用不為空,例如,圖 4所示LDl和LDS2確定的邏輯DU或LDO和LDSl確定的邏輯DU等,則進一步判斷進 行RAID級別變換後該邏輯DU對應的物理磁碟單元中數據所需複製位置與進行RAID級別變換前是否屬於同一物理磁碟,若是,則不需要搬移其中的數據,只需要直接修改當 前單個LUN的新映射表中的相應位置,賦予一個記錄值;若進行RAID級別變換後該邏 輯DU對應的物理磁碟單元中數據所需複製位置與進行RAID級別變換前不屬於同一物理 磁碟,則為該數據重新分配物理磁碟單元並進行數據搬移,相應地,還需要修改當前單 個LUN的新映射表中的相應位置,賦予一個記錄值。與現有技術無差別地對待數據為空和數據為非空這兩種基本情況而在數據為空 時仍然分配空間進行級別變換相比,本發明實施例的方案實際只為數據佔用為非空的磁 盤單元分配空間以進行級別變換,因此節約了資源和時間,提高了磁碟空間的利用率。以下結合圖3A、圖3B和圖5所示RAID級別變換前LUN的映射表,舉例說明 上述情況二所對應的處理方案。假設本發明實施例中的存儲系統由6個物理磁碟(4個邏輯磁碟)構成,需 要將 一個LUN進行從RAID 0到RAIDlO的級別變換。如圖5所示,若LDO和LDSO所確定 的邏輯DU(以下簡稱邏輯DUO)的數據佔用為非空,由於是變換到RAID10,則在將進行 RAID級別變換時需要對該邏輯DUO中的數據做備份。也就是說,該邏輯DUO的數據需 要搬移到RAID 10級別的布局表邏輯DUO (由LDO和LDSO確定)和邏輯DUl (由LDl 禾口 LDSO確定)對應的物理DU。由圖3A可知,由於RAID 10級別的布局表邏輯DUO對應的物理DU所屬物理 磁碟的身份證號為0,而由圖5可以獲知,RAID級別變換前LUN的映射表中邏輯DUO 對應的物理DU所屬物理磁碟的身份證號也為0,即RAID級別變換前LUN的映射表中邏 輯DUO中數據所需複製位置與進行RAID級別變換前屬於同一物理磁碟,因此,在進行 級別變換過程中,RAID 10級別的布局表邏輯DUO的數據不需要搬移,只需要修改RAID 10級別布局表的邏輯DUO在新映射表中的相應位置的記錄值即可。這裡假設RAID級 別變換前LUN的映射表中邏輯DUO對應的物理DU在身份證號為O的物理磁碟中的偏移 為0,則RAID 10級別的布局表的邏輯DUO在新映射表中的相應位置的記錄值修改為DU 0:0。但是,RAID 10級別的布局表邏輯DUl對應的物理DU所屬物理磁碟的身份證號 為1,而RAID級別變換前LUN的映射表中邏輯DUO對應的物理DU所屬物理磁碟的身 份證號為O。顯然,RAID級別變換前LUN的映射表中邏輯DUO的數據所需複製位置與 進行RAID級別變換前不屬於同一物理磁碟,則在變換到RAIDlO級別時,需要為RAID 級別變換前LUN的映射表中邏輯DUO的數據重新分配一個物理DU並將數據搬移到該物 理DU,同時,修改RAID 10級別的布局表中的邏輯DUO在新映射表中的相應位置的記 錄值。這裡假設重新分配的物理DU在身份證號為1的物理磁碟中的偏移為0,則RAID 10級別LUN的布局表中的邏輯DUO在新映射表中的相應位置的記錄值修改為DU 1:0。對於RAID級別變換前LUN的映射表中LDl和LDSO所確定的邏輯DU(以下簡 稱邏輯DUl),在RAID的級別變換到RAID 10時,由於RAID 10級別的布局表中LD2、 LDSO所確定的邏輯DU(以下簡稱邏輯DU2)和LD3、LDSO所確定的邏輯DU(以下簡 稱邏輯DU3)對應的物理DU所屬物理磁碟均不與RAID級別變換前LUN的映射表中邏 輯DUl對應的物理DU所屬物理磁碟相同,因此,需要為級別為RAID O的LUN的映射 表中邏輯DUl的數據重新分配兩個物理DU (如前所述,一個做數據備份之用)並進行數據搬移,同時,修改RAID 10級別布局表邏輯DU2和邏輯DU3在新映射表中的相應位置 的記錄值。這裡假設重新分配的兩個物理DU在身份證號為2的物理磁碟和身份證號為 3的物理磁碟中的偏移分別為1和2,則RAID 10級別的布局表邏輯DUO在新映射表中的 相應位置的記錄值分別修改為DU 2:1和DU 3:2。對於RAID級別變換前LUN的映射表中其他邏輯DU在進行RAID級別變換時 重新分配物理空間、進行數據搬移和/或LUN的新映射表相應位置記錄值的修改等等, 與上述RAID 0級別LUN映射表中邏輯DUO和邏輯DUl在進行RAID級別變換時重新分 配物理空間、進行數據搬移和/或RAID 10級別LUN的新映射表相應位置記錄值的修改 類似,不再贅述。從上述對於情況二的處理方案可以看出,本發明實施例省去了現有技術中進行 RAID級別變換後的數據所需複製位置與進行RAID級別變換前的數據屬於同一物理磁碟 時的數據重複搬移,減少了數據處理量,精簡了 RAID級別轉換的流程。在本發明實施例中,對於進行數據搬移後釋放的資源再次進行管理,例如,將 其歸入未使用的磁碟單元隊列(queue),以代替傳統方式中的磁碟碎片整理。當單個LUN中各個邏輯DU的數據進行不同的處理完畢,則回收當前LUN的原 映射表,例如,釋放原映射表所佔用的內存資源等等,至此,該LUN的RAID級別變換 完成。請參閱圖5,本發明實施例提供的一種RAID級別變換裝置基本邏輯結構示意 圖。為了便於說明,僅示出了與本發明實施例相關的部分。該裝置的功能模塊或單元為 硬體單元/模塊、軟體單元/模塊或軟硬體相結合單元/模塊,以下逐個說明。判斷模塊601,用於判斷系統剩餘可用空間是否滿足當前單個LUN進行RAID級 別變換時所需的空間變化量,其包括查詢單元6011、計算單元6012和比較單元6013。作為本發明的實施例,查詢單元6011首先查詢各個物理磁碟未使用的磁碟單元 以得到系統剩餘可用空間,其中,各個物理磁碟未使用的磁碟單元可以以隊列(queue)的 形式管理,因此,查詢單元6011實際上可以通過訪問隊列獲知各個物理磁碟未使用的磁 盤單元,這些未使用的磁碟單元的總和構成了系統剩餘可用空間。之後,計算單元6012 計算當前單個LUN進行RAID級別變換時所需的空間增大或減少量。此為公知技術,不 做贅述。 比較單元6013比較查詢單元6011查詢所獲系統剩餘可用空間與計算單元6012 計算所得當前LUN進行RAID級別變換時所需的空間增大或減少量,若LUN所佔空間 增大或減少量小於上述系統剩餘可用空間,則判斷模塊601判斷系統剩餘可用空間滿足 當前LUN進行RAID級別變換時所需的空間變化量,從而可以進行RAID級別變換;否 貝U,判斷模塊601判斷系統剩餘可用空間不滿足當前LUN進行RAID級別變換時所需的 空間變化量,RAID級別變換可能失敗。由於判斷模塊601在判斷系統剩餘可用空間滿足當前LUN進行RAID級別變換 時所需的空間變化量即可開始對當前LUN進行RAID級別變換,而不是以RAID組為單 位來進行,減少了 RAID級別變換所受的限制,增強了靈活性。表讀取模塊602,用於在判斷模塊601判斷系統剩餘可用空間滿足當前LUN進 行RAID級別變換時所需的空間變化量時,讀取當前LUN的原映射表和RAID結構發生變化後的布局表。 數據處理模塊603,根據表讀取模塊602讀取的當前LUN的原映射表和RAID結 構發生變化後的布局表,在所述磁碟單元中數據佔用為空時將當前邏輯單元號的RAID級 別變換後的新映射表中對應的邏輯單元項設置為規定值;否則,根據RAID級別變換後 的布局表和所述原映射表,判斷進行RAID級別變換後所述磁碟單元中數據所需複製位置 與進行RAID級別變換前的位置是否屬於同一物理磁碟,並根據判斷結果進行映射表修改 或數據搬移,其包括映射表處理單元6031、判斷單元6032和分配單元6033。映射表處理單元6031,用於磁碟單元中數據佔用為空時將當前LUN的新映射表 相應表項置為一規定值或所述磁碟單元中數據佔用為非空時修改當前單個LUN的新映射 表相應表項。判斷單元6032,用於磁碟單元中數據佔用為非空時判斷進行RAID級別變換後 所述磁碟單元中數據所需複製位置與進行RAID級別變換前是否屬於同一物理磁碟,若 是,則不需要搬移其中的數據,只需要映射表處理單元6031直接修改當前LUN的新映射 表中的相應位置,賦予一個記錄值。分配單元6033,用於判斷單元6032判斷進行RAID級別變換後所述磁碟單元中 數據所需複製位置與進行RAID級別變換前不屬於同一物理磁碟,則為該數據重新分配物 理磁碟單元並進行數據搬移,相應地,還需要映射表處理單元6031修改當前LUN的新映 射表中的相應位置,賦予一個記錄值。另外,所述RAID級別變換裝置還包括磁碟單元歸隊模塊604,用於將所述分配單元6033進行數據搬移所留下的磁碟 單元歸入未使用的磁碟單元隊列;預處理模塊605,用於將物理磁碟空間劃分為離散的磁碟單元並形成邏輯磁碟, 根據所述物理磁碟和邏輯磁碟,生成當前邏輯單元號的布局表以及根據所述當前邏輯磁 盤所屬RAID的布局表,生成當前邏輯單元號的映射表,所述邏輯磁碟中的邏輯磁碟單元 與所述物理磁碟空間劃分成的磁碟單元一一對應。從實施例可以得知,由於數據處理模塊603對磁碟單元中數據佔用為空或非空 區別對待,即,分配單元6033實際上並沒有為數據佔用為空的磁碟單元分配空間以進行 級別變換,因此節約了資源和時間,提高了磁碟空間的利用率。本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可 以通過程序來指令相關的硬體來完成,該程序可以存儲於一計算機可讀存儲介質中,存 儲介質可以包括只讀存儲器(ROM,Read Only Memory)、隨機存取存儲器(RAM, Random Access Memory)、磁碟或光碟等。以上對本發明實施例所提供的RAID級別變換方法和相應的RAID級別變換裝置 進行了詳細介紹,本文中應用了具體個例對本發明的原理及實施方式進行了闡述,以上 實施例的說明只是用於幫助理解本發明的方法及其核心思想;同時,對於本領域的一般 技術人員,依據本發明的思想,在具體實施方式
及應用範圍上均會有改變之處,綜上所 述,本說明書內容不應理解為對本發明的限制。
權利要求
1.一種RAID級別變換方法,其特徵在於,包括判斷系統剩餘可用空間是否滿足當前邏輯單元號進行RAID級別變換時所需的空間變 化量;若滿足,則讀取當前邏輯單元號的原映射表以及RAID級別變換後的布局表; 判斷所述原映射表反映的磁碟單元中數據佔用為空或非空,若所述磁碟單元中數據 佔用為空,則將當前邏輯單元號的RAID級別變換後的新映射表中對應的邏輯單元項設置 為規定值;否則,根據RAID級別變換後的布局表和所述原映射表,判斷進行RAID級別 變換後所述磁碟單元中數據所需複製位置與進行RAID級別變換前的位置是否屬於同一物 理磁碟,並根據判斷結果進行映射表修改或數據搬移。
2.如權利要求1所述RAID級別變換方法,其特徵在於,所述判斷系統剩餘可用空間 是否滿足當前邏輯單元號進行RAID級別變換時所需的空間變化量包括查詢物理磁碟未使用的磁碟單元以得到系統剩餘可用空間; 計算所述當前邏輯單元號進行RAID級別變換時所需的空間增大或減少量; 若所述空間增大或減少量小於所述系統剩餘可用空間,則判斷系統剩餘可用空間滿 足當前邏輯單元號進行RAID級別變換時所需的空間增大或減少量,否則,判斷系統剩餘 可用空間不滿足當前邏輯單元號進行RAID級別變換時所需的空間增大或減少量。
3.如權利要求1或2所述RAID級別變換方法,其特徵在於,所述根據判斷結果進行 映射表修改或數據搬移包括若判斷進行RAID級別變換後所述磁碟單元中數據所需複製位置與進行RAID級別變 換前的位置屬於同一物理磁碟,則修改當前邏輯單元號所屬RAID的新映射表邏輯單元的 值;否則,為所述數據重新分配物理磁碟單元並進行數據搬移。
4.如權利要求3所述RAID級別變換方法,其特徵在於,還包括 將所述進行數據搬移所留下的磁碟單元歸入未使用的磁碟單元隊列。
5.如權利要求1或2所述RAID級別變換方法,其特徵在於,所述判斷系統剩餘可用 空間是否滿足當前邏輯單元號進行RAID級別變換時所需的空間變化量之前還包括將物理磁碟空間劃分為離散的磁碟單元並形成邏輯磁碟,所述邏輯磁碟中的邏輯磁 盤單元與所述物理磁碟空間劃分成的磁碟單元一一對應;根據所述物理磁碟和邏輯磁碟,生成當前邏輯單元號的布局表;根據所述當前邏輯磁碟所屬RAID的布局表,生成當前邏輯單元號的映射表。
6.—種RAID級別變換裝置,其特徵在於,所述裝置包括判斷模塊,用於判斷系統剩餘可用空間是否滿足當前邏輯單元號進行RAID級別變換 時所需的空間變化量;表讀取模塊,用於所述判斷模塊判斷系統剩餘可用空間滿足當前邏輯單元號進行 RAID級別變換時所需的空間變化量時,讀取所述當前邏輯單元號的原映射表和RAID結 構發生變化後的布局表;數據處理模塊,用於根據所述表讀取模塊讀取的原映射表反映的磁碟單元中數據佔 用為空或非空,在所述磁碟單元中數據佔用為空時將當前邏輯單元號的RAID級別變換後 的新映射表中對應的邏輯單元項設置為規定值;否則,根據RAID級別變換後的布局表 和所述原映射表,判斷進行RAID級別變換後所述磁碟單元中數據所需複製位置與進行RAID級別變換前的位置是否屬於同一物理磁碟,並根據判斷結果進行映射表修改或數據 搬移。
7.如權利要求6所述RAID級別變換裝置,其特徵在於,所述數據處理模塊包括映射表處理單元,用於所述磁碟單元中數據佔用為空時將所述當前邏輯磁碟的新映射表相應表項置為一規定值或所述磁碟單元中數據佔用為非空時修改當前邏輯磁碟的新 映射表相應表項;判斷單元,用於所述磁碟單元中數據佔用為非空時判斷進行RAID級別變換後所述磁 盤單元中數據所需複製位置與進行RAID級別變換前是否屬於同一物理磁碟;分配單元,用於所述判斷單元判斷進行RAID級別變換後,所述磁碟單元中數據所需 複製位置與進行RAID級別變換前不屬於同一物理磁碟時為所述數據重新分配物理磁碟單 元並進行數據搬移。
8.如權利要求7所述RAID級別變換裝置,其特徵在於,所述RAID級別變換裝置還 包括磁碟單元歸隊模塊,用於將所述分配單元進行數據搬移所留下的磁碟單元歸入未使 用的磁碟單元隊列。
9.如權利要求6所述RAID級別變換裝置,其特徵在於,所述判斷模塊包括查詢單元,用於查詢物理磁碟未使用的磁碟單元以得到系統剩餘可用空間;計算單元,用於計算所述當前邏輯單元號進行RAID級別變換時所需的空間增大或減 少量;比較單元,用於所述計算單元計算所得空間增大或減少量小於所述系統剩餘可用空 間,則判斷系統剩餘可用空間滿足當前邏輯單元號進行RAID級別變換時所需的空間增大 或減少量,否則,判斷系統剩餘可用空間不滿足當前邏輯單元號進行RAID級別變換時所 需的空間增大或減少量。
10.如權利要求6所述RAID級別變換裝置,其特徵在於,所述RAID級別變換裝置 還包括預處理模塊,用於將物理磁碟空間劃分為離散的磁碟單元並形成邏輯磁碟,根據 所述物理磁碟和邏輯磁碟,生成當前邏輯單元號的布局表以及根據所述當前邏輯磁碟所 屬RAID的布局表,生成當前邏輯單元號的映射表,所述邏輯磁碟中的邏輯磁碟單元與所 述物理磁碟空間劃分成的磁碟單元一一對應。
全文摘要
本發明實施例提供一種RAID級別變換方法,所述方法包括在判斷系統剩餘可用空間滿足當前LUN進行RAID級別變換時所需的空間變化量後,讀取當前LUN的原映射表以及RAID級別變換後的布局表,判斷所述原映射表反映的磁碟單元中數據佔用為空或非空,為空時將當前LUN的RAID級別變換後的新映射表中對應的邏輯單元項設置為規定值;否則,根據RAID級別變換後的布局表和原映射表,判斷RAID級別變換後磁碟單元中數據所需複製位置與進行RAID級別變換前的位置是否屬於同一物理磁碟,根據判斷結果進行映射表修改或數據搬移。本發明增強了RAID級別變換的靈活性,減少了數據處理量和提高了RAID中磁碟空間的利用率。
文檔編號G06F3/06GK102023812SQ20091017422
公開日2011年4月20日 申請日期2009年9月23日 優先權日2009年9月23日
發明者林宇, 郭楠 申請人:成都市華為賽門鐵克科技有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀