專利名稱:一種邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法
技術(shù)領(lǐng)域:
本發(fā)明涉及存儲(chǔ)技術(shù)領(lǐng)域,特別涉及一種邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記 錄方法。
背景技術(shù):
隨著信息時(shí)代的不斷發(fā)展,信息的容量成指數(shù)級(jí)增長,對(duì)存儲(chǔ)資源的需求越來越 大。在傳統(tǒng)的存儲(chǔ)管理中是預(yù)先估計(jì)存儲(chǔ)資源的需求,然后劃分邏輯卷給用戶使用。然而 這種存儲(chǔ)資源的需求估計(jì)往往超出實(shí)際使用的需求容量,導(dǎo)致了存儲(chǔ)資源的浪費(fèi),提高了 存儲(chǔ)成本。對(duì)此,人們開發(fā)了自動(dòng)精簡配置技術(shù),即按照實(shí)際使用進(jìn)行分配物理存儲(chǔ)空間,隨 著用戶寫入的數(shù)據(jù)越來越多,實(shí)際存儲(chǔ)空間逐漸自動(dòng)增加,從而有效提高了存儲(chǔ)資源的利用率。但是對(duì)于自動(dòng)精簡配置的引入,另一個(gè)問題逐漸顯現(xiàn),即邏輯區(qū)段和物理區(qū)段之 間映射關(guān)系的的記錄問題。圖1是現(xiàn)有技術(shù)的邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的的描述方法示意圖。如 圖ι所示,一個(gè)存儲(chǔ)系統(tǒng)由3個(gè)磁盤陣列(RAID0、1、2)構(gòu)成一個(gè)存儲(chǔ)資源池(SP,Storage Pool),LVO和LVl是基于SP創(chuàng)建的兩個(gè)邏輯卷(LV)。SP按照設(shè)定的存儲(chǔ)粒度大小劃分為多 個(gè)物理區(qū)段(PEJhysical Extent)。LV也由與存儲(chǔ)粒度大小一致的邏輯區(qū)段(LE,Logical Extent)組成,其中LVO采用了自動(dòng)精簡配置,因此SP分配給LVO的實(shí)際空間小于其申請(qǐng)的 空間(斜線覆蓋部分為已申請(qǐng)但未分配給LVO的空間)。LVl未采用自動(dòng)精簡配置,因此不 存在已申請(qǐng)但未分配的空間。對(duì)于圖1所示的方法,記錄磁盤的配置情況時(shí),需要使用一個(gè)位圖表(PEBitmap) 描述PE是否被占用,其中“1”表示對(duì)應(yīng)的PE已分配給LV,0表示空閑。同時(shí),在PE分配結(jié) 束后,對(duì)于LV也需要記錄一個(gè)映射表,用于記錄LE與PE之間的映射關(guān)系,每個(gè)LE中的數(shù) 字表示其對(duì)應(yīng)的PE的編號(hào),如LVO的第1個(gè)LE中的數(shù)字為“0”表示其對(duì)應(yīng)存儲(chǔ)池編號(hào)為 “0”的PE,同理第2個(gè)LE對(duì)應(yīng)存儲(chǔ)池編號(hào)為“6”的PE,第3個(gè)LE對(duì)應(yīng)存儲(chǔ)池編號(hào)為“7”的 PE。由于采用位圖表的方式描述PE是否被占用時(shí),位圖表的大小與SP的容量和存儲(chǔ) 粒度相關(guān),在存儲(chǔ)粒度一定的情況下,SP越大,位圖表的數(shù)據(jù)量越大,在SP容量一定的情況 下,存儲(chǔ)粒度越小,位圖表的數(shù)據(jù)量也越大。同樣,記錄LE和PE映射關(guān)系的映射表,也與LV 的容量和存儲(chǔ)粒度相關(guān),在存儲(chǔ)粒度一定的情況下,SP越大,記錄LE和PE映射關(guān)系的映射 表的數(shù)據(jù)量越大,在SP容量一定的情況下,存儲(chǔ)粒度越小,記錄LE和PE映射關(guān)系的映射表 的數(shù)據(jù)量也越大。因此,在現(xiàn)有技術(shù)中,隨著磁盤存儲(chǔ)容量的增加,用于記錄LE和PE映射關(guān)系等邏 輯區(qū)段和物理區(qū)段之間映射關(guān)系的的數(shù)據(jù)量將會(huì)越來越大,所需要的內(nèi)存空間越來越大, 而受限于內(nèi)存空間大小,目前記錄LE和PE映射關(guān)系的方法往往無法適應(yīng)采用較低存儲(chǔ)粒度的存儲(chǔ)系統(tǒng)。另外,由于自動(dòng)精簡配置技術(shù)需要隨實(shí)際需求空間的增加而為LV分配具體 的PE,當(dāng)一個(gè)SP存在多個(gè)采用自動(dòng)精簡配置的LV,且同時(shí)有IO讀寫時(shí),可能會(huì)導(dǎo)致分配LE 對(duì)應(yīng)的PE時(shí),之間映射關(guān)系時(shí)散列,而不是連續(xù)的,造成IO性能降低。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法,能夠減少 用于記錄邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的數(shù)據(jù)量。為達(dá)到上述目的,本發(fā)明的技術(shù)方案具體是這樣實(shí)現(xiàn)的由上述的技術(shù)方案可見,本發(fā)明的這種邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄 方法,采用段Gegment)的描述方式記錄LE和PE的映射關(guān)系,該段描述方式與SP容量和 LV容量無關(guān),可以大大降低用于記錄LE和PE的映射關(guān)系的數(shù)據(jù)量,減少內(nèi)存占用,進(jìn)而在 有限的內(nèi)存情況下,可以降低存儲(chǔ)粒度,提高存儲(chǔ)資源的使用效率。另外,本發(fā)明進(jìn)一步通 過缺失預(yù)分配,使當(dāng)采用自動(dòng)精簡配置的多個(gè)LV同時(shí)發(fā)生讀寫缺失時(shí)(需要使用到已申請(qǐng) 但尚未實(shí)際分配的PE),減少LE與PE之間映射關(guān)系的散列現(xiàn)象,提高了 IO性能,并進(jìn)一步 減少由映射散列引起的記錄LE和PE的映射關(guān)系時(shí)所需數(shù)據(jù)量的增加。
圖1為現(xiàn)有邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法示意圖;圖2為本發(fā)明實(shí)施例的邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法示意圖。
具體實(shí)施例方式為使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下參照附圖并舉實(shí)施例,對(duì) 本發(fā)明進(jìn)一步詳細(xì)說明。本發(fā)明主要是采用段的描述方式記錄LE和PE的映射關(guān)系,對(duì)于分配給LV的PE, 采用LE起始位置、PE起始位置和長度三個(gè)參數(shù)組成的段進(jìn)行記錄,使得當(dāng)采用自動(dòng)精簡配 置為LV追加分配PE時(shí),若連續(xù)分配則只須改變已記錄的段長度參數(shù),不需要增加段的數(shù) 量,如果不連續(xù)分配,則可以通過增加段的數(shù)量進(jìn)行記錄,使得記錄LE和PE的映射關(guān)系所 需數(shù)據(jù)量與SP容量、LV容量無關(guān),只與PE與LE對(duì)應(yīng)關(guān)系的連續(xù)性相關(guān),由于追加分配的 PE —般都是連續(xù)的或者部分連續(xù)的,所以記錄LE和PE的映射關(guān)系所需數(shù)據(jù)量的增加很少, 大大小于現(xiàn)有方式。尤其在大容量存儲(chǔ)系統(tǒng)中,對(duì)于減少記錄LE和PE的映射關(guān)系的數(shù)據(jù) 量的效果特別明顯。圖2為本發(fā)明是實(shí)施例的邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法示意圖; 如圖2所示,一個(gè)存儲(chǔ)系統(tǒng)由3個(gè)磁盤陣列(RAID0、1、2)構(gòu)成一個(gè)SP,LVO和LVl是基于SP 創(chuàng)建的LV。SP按照設(shè)定的存儲(chǔ)粒度大小劃分為多個(gè)PE。其中LVO采用了自動(dòng)精簡配置,其 中編號(hào)0、6、7的PE已分配給了 LV0,而斜線覆蓋部分為已申請(qǐng)但未分配給LVO的空間,存儲(chǔ) 系統(tǒng)會(huì)隨著數(shù)據(jù)的存儲(chǔ)需求的增加,將具體PE逐漸分配給這部分空間。LVl未采用自動(dòng)精 簡配置,編號(hào)1 5的PE已分配給了 LVl。對(duì)于LVO,PE分配結(jié)束后,由于當(dāng)前SP中只分配了 3個(gè)PE給LV0,這3個(gè)PE分為 兩個(gè)連續(xù)的部分,編號(hào)0的PE對(duì)應(yīng)編號(hào)0的LE,編號(hào)6和7的兩個(gè)PE對(duì)應(yīng)編號(hào)1、2的兩個(gè)LE,所以使用本發(fā)明實(shí)施例的邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法,可以使用 兩個(gè)段來記錄LE與PE的映射情況,一個(gè)段的段描述中的LE起始位置為0,PE起始位置為 0,長度為1,另一個(gè)段的段描述中LE的起始位置為1,PE起始位置為6,長度為2。不管給 LV分配的PE有多少,PE分為多少個(gè)連續(xù)的部分,都可以以段為單位來記錄。當(dāng)發(fā)生讀寫缺失時(shí),SP如果能夠按照PE的順序連續(xù)分配空閑PE給LV,則記錄的 段的數(shù)量不需要增加,而只需增加已記錄的段中的長度參數(shù)即可。這樣大大減少了記錄PE 與LE之間映射關(guān)系所需的數(shù)據(jù)量。當(dāng)然,在具體記錄時(shí),段中包含用于表示LE起始位置的參數(shù)、用于表示PE起始位 置的參數(shù),以及用于表示段長度的參數(shù)的具體名稱任意。對(duì)于LV1,PE分配結(jié)束后,由于分配的PE全部連續(xù),所以只需用一個(gè)段來記錄,其 段描述中,LE起始位置為0,PE起始位置為1,長度為5。這也比現(xiàn)有的記錄方法所需數(shù)據(jù)量小。另外,為了保證在多個(gè)具有自動(dòng)精簡配置的LV同時(shí)發(fā)生讀寫缺失時(shí),盡可能保證 分配給LV的空閑PE的連續(xù)性,可以采用預(yù)分配空閑PE的方法,如圖2所示,被豎線覆蓋的 部分為預(yù)分配給LVO的PE,在進(jìn)行PE分配時(shí),當(dāng)分配給LVO的最后一個(gè)空閑PE,即編號(hào)為 7的空閑PE分配給LVO時(shí),將7號(hào)PE后面連續(xù)兩個(gè)空閑PE,即8、9號(hào)空閑PE預(yù)留給LV0。 此時(shí),這樣當(dāng)LVO發(fā)生讀寫缺失時(shí),可以優(yōu)先把預(yù)留的空閑PE分配給LV0,從而保證分配給 LVO的PE的連續(xù)性,減少LE與PE映射關(guān)系的散列現(xiàn)象。如果LVO以外的其他LV發(fā)生讀寫 缺失,而SP中空閑的PE已耗盡時(shí),再把預(yù)留的空閑PE分配給其他LV。當(dāng)然,具體預(yù)留多少PE給采用自動(dòng)精簡配置的LV,可以根據(jù)SP中剩余的空閑PE 的數(shù)量確定,隨剩余空閑PE的數(shù)量減少而減少,也可以采用固定的預(yù)留數(shù)量,具體數(shù)量任 意,但至少兩個(gè),否則談不上連續(xù)。如果分配給LV的最后一個(gè)空閑PE之后沒有連續(xù)的空閑 PE,則可以不進(jìn)行預(yù)留的操作,上述預(yù)分配方法由于減少了 LE與PE對(duì)應(yīng)關(guān)系的散列現(xiàn)象,即可以提高存儲(chǔ)系統(tǒng) 的IO讀寫性能,也能夠進(jìn)一步減少記錄LE與PE映射關(guān)系時(shí)所需數(shù)據(jù)量。由上述的實(shí)施例可見,本發(fā)明的這種邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方 法,采用段的描述方式記錄LE和PE的映射關(guān)系,該段描述方式與SP容量和LV容量無關(guān), 可以大大降低用于記錄LE和PE的映射關(guān)系的數(shù)據(jù)量,減少內(nèi)存占用,進(jìn)而在有限的內(nèi)存情 況下,可以降低存儲(chǔ)粒度,提高存儲(chǔ)資源的使用效率。另外,本發(fā)明進(jìn)一步通過缺失預(yù)分配, 使當(dāng)采用自動(dòng)精簡配置的多個(gè)LV同時(shí)發(fā)生讀寫缺失時(shí),減少LE與PE之間映射關(guān)系的散列 現(xiàn)象,提高了 IO性能,并進(jìn)一步減少由映射散列引起的記錄LE和PE的映射關(guān)系時(shí)所需數(shù) 據(jù)量的增加。
權(quán)利要求
1.一種邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法,其特征在于,該方法包括物理區(qū)段PE分配結(jié)束后,以段為單位記錄采用自動(dòng)精簡配置的邏輯卷LV的邏輯區(qū)段 LE和物理區(qū)段PE的映射關(guān)系;其中,所述段中包含用于表示LE起始位置的參數(shù)、用于表示PE起始位置的參數(shù),以及 用于表示段長度的參數(shù)。
2.如權(quán)利要求1所述的邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法,其特征在于, 該方法進(jìn)一步包括PE分配結(jié)束后,以段為單位記錄未采用自動(dòng)精簡配置的LV的LE和PE的映射關(guān)系;其中,所述段中包含用于表示LE起始位置的參數(shù)、用于表示PE起始位置的參數(shù),以及 用于表示段長度的參數(shù)。
3.如權(quán)利要求1所述的邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法,其特征在于, 該方法進(jìn)一步包括在所述PE分配結(jié)束前,將實(shí)際分配給采用自動(dòng)精簡配置的LV的最后一個(gè)空閑PE之后 的至少兩個(gè)連續(xù)的空閑PE預(yù)留給該LV。
4.如權(quán)利要求3所述的邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法,其特征在于, 該方法進(jìn)一步包括當(dāng)所述采用自動(dòng)精簡配置的LV發(fā)生讀寫缺失時(shí),將所述預(yù)留的空閑PE分配給所述采 用自動(dòng)精簡配置的LV ;并在所述PE分配結(jié)束后,修改所述用于表示段長度的參數(shù)。
5.如權(quán)利要求3所述的邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法,其特征在于, 該方法進(jìn)一步包括在所述PE分配結(jié)束前,若實(shí)際分配給采用自動(dòng)精簡配置的LV的最后一個(gè)空閑PE之后 不存在至少兩個(gè)連續(xù)的空閑PE,則不執(zhí)行所述的預(yù)留操作。
全文摘要
本發(fā)明公開了一種邏輯區(qū)段和物理區(qū)段之間映射關(guān)系的記錄方法,該方法包括物理區(qū)段PE分配結(jié)束后,以段為單位記錄采用自動(dòng)精簡配置的邏輯卷LV的邏輯區(qū)段LE和物理區(qū)段PE的映射關(guān)系;其中,所述段中包含用于表示LE起始位置的參數(shù)、用于表示PE起始位置的參數(shù),以及用于表示段長度的參數(shù)。該方法采用段的描述方式記錄LE和PE的映射關(guān)系,該描述方式與SP容量和LV容量無關(guān),可以大大降低用于記錄LE和PE的映射關(guān)系的數(shù)據(jù)量。
文檔編號(hào)G06F12/06GK102063383SQ201010618368
公開日2011年5月18日 申請(qǐng)日期2010年12月22日 優(yōu)先權(quán)日2010年12月22日
發(fā)明者鄒波 申請(qǐng)人:云海創(chuàng)想信息技術(shù)(北京)有限公司, 深圳市創(chuàng)新科信息技術(shù)有限公司