两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

一種提高磁盤可用性的方法和磁盤陣列控制器的制作方法

文檔序號:6754413閱讀:259來源:國知局
專利名稱:一種提高磁盤可用性的方法和磁盤陣列控制器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù),特別是涉及一種提高磁盤可用性的方法和磁 盤陣列控制器。
背景技術(shù)
目前,為了提升硬盤的存儲性能和數(shù)據(jù)安全,出現(xiàn)了獨立磁盤冗余陣列(RAID, Redundant Array of Independent Disks,)簡稱為》茲盤P車歹'J。》茲盤 陣列技術(shù)就是利用多個硬盤的組合連成一個陣列,并將數(shù)據(jù)有選擇性地分布 在一個陣列中的多個;茲盤上,利用該多個》茲盤的并行存取、并行傳輸來匹配 帶寬,提高存取速度,對主機來說它相當(dāng)于一個快速大容量的磁盤,從而提 高網(wǎng)絡(luò)數(shù)據(jù)的可用性和存儲容量。在磁盤陣列中,數(shù)據(jù)的組織方式采用的是分區(qū)(extent)、分塊(strip) 和條帶(stripe)。圖1是磁盤陣列中的分區(qū)結(jié)構(gòu)示意圖。圖2是磁盤陣列 中的分塊和條帶結(jié)構(gòu)示意圖。參見圖1,在一個磁盤陣列中,每一個磁盤都 首先被劃分為一個以上的分區(qū);參見圖2,在磁盤陣列中的磁盤被劃分出分 區(qū)后,每一個分區(qū)又被劃分成多個分塊,并且,磁盤陣列中不同分區(qū)上位置 相關(guān)(如均為所在分區(qū)上的第一個分塊)的分塊集合在一起,形成條帶,也 就是說,分塊是條帶的元素,分塊是磁盤陣列中存儲數(shù)據(jù)的最小單元。在實際的使用中,經(jīng)常會出現(xiàn)磁盤陣列中 一 個磁盤的物理磁道發(fā)生損壞 的情況。現(xiàn)有技術(shù)針對此種情況的處理為 一旦檢測出一個磁盤上存在損壞 的物理》茲道,無論是磁盤的部分磁道損壞還是所有磁道損壞,均認(rèn)為整個磁 盤不可用,并更換新的磁盤。然而,在實際的業(yè)務(wù)中,很多情況下一個磁盤中并非所有的磁道都會損壞,而只是其中的部分》茲道損壞,現(xiàn)有技術(shù)針對部分》茲道損壞的情況也認(rèn)為 整個;茲盤不可用,并更換新的^f茲盤的做法,則大大降低了石茲盤陣列中-茲盤的 可用性,并大大浪費了磁盤資源。進一 步地,對于具有容錯機制的磁盤陣列,在磁盤中只是部分磁道損壞, 而其余磁道正常時,正常磁道上條帶中的數(shù)據(jù)實際上是能夠被正常讀取的, 但是現(xiàn)有技術(shù)由于是更換新的磁盤,因此,需要重建被更換的磁盤中所有磁 道上的數(shù)據(jù),也就是說,不僅是重建損壞磁道上條帶中的數(shù)據(jù),而且對于本 來能夠被正常讀取的正常磁道上條帶中的數(shù)據(jù)也需要進行重建,從而導(dǎo)致數(shù) 據(jù)重建的時間過長,并占用了大量的處理能力。進一步地,由于現(xiàn)有技術(shù)數(shù)據(jù)重建的時間過長,因此,在重建時間段內(nèi) 容易發(fā)生其他磁盤的磁道損壞的情況,從而很容易超出磁盤陣列能容忍的不 可用磁盤的數(shù)量,導(dǎo)致整個磁盤陣列不可用,從而使得整個磁盤陣列中的所 有數(shù)據(jù)丟失。發(fā)明內(nèi)容有鑒于此,本發(fā)明的主要目的在于提供一種提高磁盤可用性的方法和一 種磁盤陣列控制器,以便于提高磁盤陣列中磁盤的可用性。為了達到上述目的,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的一種提高磁盤可用性的方法,在磁盤陣列中設(shè)置主用數(shù)據(jù)存儲空間,在 主用數(shù)據(jù)存儲空間所在的磁道正常時,對主用數(shù)據(jù)存儲空間包括的分塊進行 訪問;設(shè)置一個以上備用數(shù)據(jù)存儲空間,該方法還包括當(dāng)檢測出磁盤陣列中磁盤的部分磁道損壞時,確定該損壞磁道上的第一 主用數(shù)據(jù)存儲空間;選取空閑的第一備用數(shù)據(jù)存儲空間,建立第一主用數(shù)據(jù)存儲空間包括的 分塊的地址和第 一備用數(shù)據(jù)存儲空間包括的分塊的地址的對應(yīng)關(guān)系;接收到對第一主用數(shù)據(jù)存儲空間包括的分塊的訪問指令,根據(jù)該訪問指 令中分塊的地址和所述對應(yīng)關(guān)系查找到第一備用數(shù)據(jù)存儲空間包括的分塊,并訪問該第 一備用數(shù)據(jù)存儲空間包括的分塊。該方法進一步包括根據(jù)所需的所述磁盤陣列的存儲空間大小和預(yù)先設(shè) 定的備用數(shù)據(jù)存儲空間的大小,創(chuàng)建所述磁盤陣列;則所述設(shè)置一個以上備 用數(shù)據(jù)存儲空間的步驟包括在所述磁盤陣列中設(shè)置一個以上備用數(shù)據(jù)存儲 空間;或者,該方法進一步包括根據(jù)所需的所述磁盤陣列的存儲空間大小創(chuàng)建所述 磁盤陣列;則所述設(shè)置一個以上備用數(shù)據(jù)存儲空間的步驟包括劃分出包括 所述磁盤陣列在內(nèi)的多個磁盤陣列共享的磁盤空間,在該共享的磁盤空間中 設(shè)置 一 個以上備用數(shù)據(jù)存儲空間。當(dāng)所述磁盤陣列具有容錯機制時,在所述選取空閑的第一備用數(shù)據(jù)存儲空間之后,并在所述接收到對第一 主用數(shù)據(jù)存儲空間包括的分塊的訪問指令之前,進一步包括將第一主用數(shù) 據(jù)存儲空間包括的分塊的數(shù)據(jù)重建到所述第 一 備用數(shù)據(jù)存儲空間包括的分 塊中。所述訪問指令中分塊的地址為該分塊的邏輯地址;建立所述對應(yīng)關(guān)系的步驟包括建立第 一主用數(shù)據(jù)存儲空間包括的分塊 的邏輯地址和第 一備用數(shù)據(jù)存儲空間包括的分塊的物理地址的對應(yīng)關(guān)系。所述訪問指令中分塊的地址為該分塊的邏輯地址;建立所述對應(yīng)關(guān)系的步驟包括建立第 一主用數(shù)據(jù)存儲空間包括的分塊 的物理地址和第 一備用數(shù)據(jù)存儲空間包括的分塊的物理地址的對應(yīng)關(guān)系;所述查找到第一備用數(shù)據(jù)存儲空間包括的分塊的步驟包括根據(jù)訪問指 令中分塊的邏輯地址轉(zhuǎn)換出該分塊的物理地址,再根據(jù)該分塊的物理地址和 所述對應(yīng)關(guān)系查找到第一備用數(shù)據(jù)存儲空間包括的分塊。該方法進一步包括當(dāng)?shù)?一備用數(shù)據(jù)存儲空間所在的磁道損壞時,選取空閑的第二備用數(shù)據(jù) 存儲空間,將所述對應(yīng)關(guān)系更新為第 一主用數(shù)據(jù)存儲空間包括的分塊的地址和第二備用數(shù)據(jù)存儲空間包括的分塊的地址的對應(yīng)關(guān)系,并在所述磁盤陣列 具有容錯機制時,將第 一備用數(shù)據(jù)存儲空間中包括的分塊的數(shù)據(jù)重建到第二備用數(shù)據(jù)存儲空間包括的分塊中;接收對第一主用數(shù)據(jù)存儲空間包括的分塊的訪問指令,根據(jù)訪問指令中 分塊的地址和更新后的對應(yīng)關(guān)系查找到第二備用數(shù)據(jù)存儲空間包括的分塊, 并訪問該第二備用數(shù)據(jù)存儲空間包括的分塊。所述數(shù)據(jù)存儲空間為條帶或分塊。一種磁盤陣列控制器,包括磁盤空間設(shè)置模塊,設(shè)置一個以上備用數(shù)據(jù)存儲空間,以及在磁盤陣列 中設(shè)置主用數(shù)據(jù)存儲空間;異常處理模塊,當(dāng)檢測出磁盤陣列中磁盤的部分磁道損壞時,確定該損 壞磁道上的第一主用數(shù)據(jù)存儲空間,選取空閑的第一備用數(shù)據(jù)存儲空間,保 存第一主用數(shù)據(jù)存儲空間包括的分塊的地址和第 一備用數(shù)據(jù)存儲空間包括 的分塊的地址的對應(yīng)關(guān)系;訪問處理模塊,如果接收到對第一主用數(shù)據(jù)存儲空間包括的分塊的訪問 指令,根據(jù)該訪問指令中分塊的地址和異常處理模塊中保存的對應(yīng)關(guān)系查找 到第 一備用數(shù)據(jù)存儲空間包括的分塊,并訪問該第 一備用數(shù)據(jù)存儲空間包括 的分塊。所述磁盤空間設(shè)置模塊,進一步用于根據(jù)所需的所述磁盤陣列的存儲空 間大小和預(yù)先設(shè)定的備用數(shù)據(jù)存儲空間的大小,創(chuàng)建所述磁盤陣列,在該磁 盤陣列中執(zhí)行所述設(shè)置 一 個以上備用數(shù)據(jù)存儲空間的處理;或者,所述磁盤空間設(shè)置模塊,進一步用于根據(jù)所需的所述磁盤陣列的存儲空 間大小創(chuàng)建所述磁盤陣列,劃分出包括所述磁盤陣列在內(nèi)的多個磁盤陣列共 享的磁盤空間,在該共享的磁盤空間中執(zhí)行所述設(shè)置一個以上備用數(shù)據(jù)存儲 空間的處理。當(dāng)所述磁盤陣列具有容錯機制時,所述異常處理模塊,進一步用于將第一主用數(shù)據(jù)存儲空間包括的分塊的 數(shù)據(jù)重建到所述第 一備用數(shù)據(jù)存儲空間包括的分塊中。
所述異常處理模塊,進一步用于在第一備用數(shù)據(jù)存儲空間所在的磁道損 壞時,選取空閑的第二備用數(shù)據(jù)存儲空間,將保存的對應(yīng)關(guān)系更新為第一主 用數(shù)據(jù)存儲空間包括的分塊的地址和第二備用數(shù)據(jù)存儲空間包括的分塊的 地址的對應(yīng)關(guān)系,并在所述磁盤陣列具有容錯機制時,將第一備用數(shù)據(jù)存儲
空間包括的分塊的數(shù)據(jù)重建到第二備用數(shù)據(jù)存儲空間包括的分塊中;
所述訪問處理模塊,進一步用于接收對第一主用數(shù)據(jù)存儲空間包括的分 塊的訪問指令,根據(jù)訪問指令中分塊的地址和所述異常處理模塊中的對應(yīng)關(guān) 系查找到第二備用數(shù)據(jù)存儲空間包括的分塊,并訪問該第二備用數(shù)據(jù)存儲空 間包括的分塊。
所述磁盤空間設(shè)置模塊,將條帶或分塊作為所述數(shù)據(jù)存儲空間執(zhí)行所述 設(shè)置的處理。
由此可見,在本發(fā)明中,當(dāng)磁盤陣列中磁盤的部分磁道損壞后,本發(fā)明 沒有認(rèn)為該整個磁盤不可用并更換新的磁盤,而是分析出受磁道損壞影響的 主用數(shù)據(jù)存儲空間,后續(xù)對該主用數(shù)據(jù)存儲空間包括的分塊的訪問轉(zhuǎn)移到選 取的備用數(shù)據(jù)存儲空間,也就是說,利用預(yù)先設(shè)置的備用數(shù)據(jù)存儲空間來代 替受磁道損壞影響的主用數(shù)據(jù)存儲空間,從而無需更換磁盤,提高了磁盤的 可用性。
進一步地,對于具有容錯機制的磁盤陣列,無需對整個磁盤的數(shù)據(jù)進行 重建,而只需對損壞磁道上數(shù)據(jù)存儲空間包括的分塊的數(shù)據(jù)進行重建,從而 大大減少了數(shù)據(jù)重建的時間,并降低了對系統(tǒng)處理資源的占用。
進一步地,由于本發(fā)明數(shù)據(jù)重建的時間短,因此,在重建時間段內(nèi)發(fā)生 其他磁盤的磁道損壞的情況則大大減少,出現(xiàn)超出磁盤陣列能容忍的不可用 磁盤數(shù)量的情況則相應(yīng)地大大減少,從而在很大程度上避免了整個磁盤陣列 不可用所導(dǎo)致的整個磁盤陣列中的所有數(shù)據(jù)丟失的情況,大大提高了磁盤陣 列的性能。


圖1是磁盤陣列中的分區(qū)結(jié)構(gòu)示意圖。
圖2是磁盤陣列中的分塊和條帶結(jié)構(gòu)示意圖。
圖3是本發(fā)明實施例1的流程圖。
圖4a是在本發(fā)明實施例1中磁盤陣列的數(shù)據(jù)存儲及備用的第一種方式 示意圖。
圖4b是在本發(fā)明實施例1中磁盤陣列的數(shù)據(jù)存儲及備用的第二種方式 示意圖。
圖5是本發(fā)明實施例2的流程圖。
圖6a是在本發(fā)明實施例2中磁盤陣列的數(shù)據(jù)存儲及備用的第一種方式 示意圖。
圖6b是在本發(fā)明實施例2中磁盤陣列的數(shù)據(jù)存儲及備用的第二種方式 示意圖。
圖7是在本發(fā)明中磁盤陣列控制器的基本結(jié)構(gòu)示意圖。
具體實施例方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖及具體實 施例對本發(fā)明作進一步地詳細描述。
本發(fā)明提出了一種提高磁盤可用性的方法,其核心思想包括在磁盤陣
列中設(shè)置主用數(shù)據(jù)存儲空間,在主用數(shù)據(jù)存儲空間所在的磁道正常時,對主
用數(shù)據(jù)存儲空間包括的分塊進行訪問;設(shè)置一個以上備用數(shù)據(jù)存儲空間;當(dāng)
;險測出石茲盤陣列中》茲盤的部分^茲道損壞時,確定該損壞磁道上的第 一主用數(shù)
據(jù)存儲空間;選取空閑的第一備用數(shù)據(jù)存儲空間,建立第一主用數(shù)據(jù)存儲空
間包括的分塊的地址和第 一 備用數(shù)據(jù)存儲空間包括的分塊的地址的對應(yīng)關(guān)
系;接收到對第一主用數(shù)據(jù)存儲空間包括的分塊的訪問指令,根據(jù)該訪問指
令中分塊的地址和所述對應(yīng)關(guān)系查找到第一備用數(shù)據(jù)存儲空間包括的分塊,
并訪問該第 一備用數(shù)據(jù)存儲空間包括的分塊??梢?,當(dāng)磁盤陣列中磁盤的部分磁道損壞后,本發(fā)明沒有i人為該整個磁 盤不可用并更換新的磁盤,而是分析出受磁道損壞影響的主用數(shù)據(jù)存儲空 間,后續(xù)對該主用數(shù)據(jù)存儲空間包括的分塊的訪問轉(zhuǎn)移到選取的備用數(shù)據(jù)存 儲空間,也就是說,利用預(yù)先設(shè)置的備用數(shù)據(jù)存儲空間來代替受磁道損壞影 響的主用數(shù)據(jù)存儲空間,從而無需更換磁盤,提高了磁盤的可用性。
目前,在磁盤陣列中,數(shù)據(jù)通常以分區(qū)中的分塊和條帶的方式進行組織 存儲,分塊是條帶的元素,并且,分塊是存儲數(shù)據(jù)的最小單元。因此,在本 發(fā)明中,可以將分塊或條帶作為上述本發(fā)明方法中提及的數(shù)據(jù)存儲空間,這 樣,在磁盤的部分磁道損壞后,可以以條帶為一次備份對象,將受磁道損壞 影響的主用的條帶利用備用條帶來代替;或者,在磁盤的部分磁道損壞后, 可以以分塊為 一次備份對象,將受磁道損壞影響的主用的分塊利用備用分塊 來代替。
當(dāng)然,以分塊或條帶作為本發(fā)明方法中提及的數(shù)據(jù)存儲空間,即把分塊 或條帶作為備份對象,只是本發(fā)明的較佳實施方式。在實際的業(yè)務(wù)實現(xiàn)中, 可以基于本發(fā)明方法的核心思想,采用其他可行的數(shù)據(jù)存儲空間,比如,參 見圖2,將一個磁盤中受磁道損壞影響的一個分塊及其上下位置上的兩個分 塊所組成的位置空間作為本發(fā)明方法中提及的數(shù)據(jù)存儲空間等。
下面則舉兩個實施例來對本發(fā)明方法的實現(xiàn)過程進行詳細的說明。
實施例1:
本實施例l針對的情況是以條帶作為本發(fā)明中提及的數(shù)據(jù)存儲空間, 即作為 一次備份對象,將受磁道損壞影響的主用的條帶利用備用條帶來代 替,從而提高磁盤的可用性。
圖3是本發(fā)明實施例1的流程圖。參見圖3,在本發(fā)明實施例1中,提 高^F茲盤可用性的實現(xiàn)過程具體包括以下步驟
步驟301:預(yù)先創(chuàng)建磁盤陣列。
步驟302:預(yù)先在磁盤陣列中設(shè)置一個以上的主用條帶,并預(yù)先設(shè)置一 個以上的備用條帶??梢允窃谠O(shè)置該磁盤陣列的邏輯巻的時候,執(zhí)行本步驟的處理。其中, 設(shè)置條帶的方法是現(xiàn)有技術(shù),此處不再描述。
需要說明的是,根據(jù)實際的業(yè)務(wù)實現(xiàn)特點,上述兩個步驟可以有如下兩
種實現(xiàn)方式 方式一、
參見圖4a,該方式一是為了使得每一個磁盤陣列都有專用的備用條帶, 具體實現(xiàn)過程包括在第一個步驟中,根據(jù)所需的磁盤陣列的實際存儲空間 大小和預(yù)先設(shè)定的備用條帶的存儲空間的大小,創(chuàng)建磁盤陣列;在第二個步 驟中,是在該磁盤陣列中設(shè)置一個以上的備用條帶。
比如,磁盤陣列5實際所需的存儲空間大小為100G,要求該磁盤陣列 5專用的備用條帶的存儲空間的大小為10G,那么,在第一個步驟中,則創(chuàng) 建110G的磁盤陣列5,這樣,在第二個步驟中,就可以在該磁盤陣列5的 內(nèi)部設(shè)置其專用的備用條帶。
方式二、
參見圖4b,該方式二是為了使得多個磁盤陣列能夠共享備用條帶,具 體實現(xiàn)過程包括在第一個步驟中,只根據(jù)所需的磁盤陣列的存儲空間大小 創(chuàng)建磁盤陣列;在第二個步驟中,劃分出包括該磁盤陣列在內(nèi)的多個磁盤陣 列共享的磁盤空間,在該共享的磁盤空間中設(shè)置一個以上備用條帶。
比如,磁盤陣列5實際所需的存儲空間大小為100G,那么,在第一個 步驟中,則創(chuàng)建100G的磁盤陣列5,在第二個步驟中,劃分包括該磁盤陣 列5在內(nèi)的多個磁盤陣列所共享的磁盤空間如為50G,并在該50G的共享磁 盤空間內(nèi)設(shè)置一個以上的備用條帶,這樣,磁盤陣列5與其他磁盤陣列共同 使用該備用條帶。
步驟303:在主用條帶所在的磁道正常時,對主用條帶中的各個分塊進 行訪問,即在主用條帶的各個分塊中進行數(shù)據(jù)的讀寫。 步驟304:檢測出磁盤陣列中磁盤的部分磁道損壞。 本步驟的實現(xiàn)過程為現(xiàn)有技術(shù),可以簡單舉例為根據(jù)對磁盤的讀寫操作是否在該-磁盤的部分》茲道上成功,部分^f茲道上失敗,來4企測出》茲盤的部分
磁道損壞;或者,由驅(qū)動程序檢測出磁盤的部分磁道損壞。
步驟305:確定該損壞磁道上的主用條帶,將該主用條帶設(shè)置為退化狀態(tài)。
本步驟中,具體是利用磁盤上損壞磁道的地址以及磁盤上各個主用條帶 的地址,確定出位于該損壞》茲道上的主用條帶,比如,損壞i茲道上的主用條 帶是圖4a和圖4b中所示的條帶3。
步驟306:選取空閑狀態(tài)的備用條帶,并將該選取的備用條帶設(shè)置為使 用狀態(tài)。
如果上述步驟301和步驟302采用上述的方式一實現(xiàn),那么,本步驟中, 是在磁盤陣列內(nèi)部選取空閑狀態(tài)的備用條帶。比如,參見圖4a,選取磁盤陣 列5內(nèi)部空閑狀態(tài)的備用條帶0。
如果上述步驟301和步驟302采用上述的方式二實現(xiàn),那么,本步驟中, 是在獨立于磁盤陣列的共享磁盤空間中選取空閑狀態(tài)的備用條帶。比如,參 見圖4b,選取磁盤陣列5及其他磁盤陣列共享的磁盤空間內(nèi)部空閑狀態(tài)的 備用條帶a。
步驟307:建立損壞磁道上主用條帶中各個分塊的地址和選取的備用條 帶中各個分塊地址的對應(yīng)關(guān)系。
主用條帶中的各個分塊具有邏輯地址和物理地址,其中,邏輯地址是用 戶訪問時使用的地址。備用條帶對用戶是透明的,因此,備用條帶中的分塊 無需專門分配邏輯地址,只有物理地址即可。這樣,在本步驟中,建立對應(yīng) 關(guān)系的方式則可以有如下兩種方式
方式A、建立損壞磁道上主用條帶中各個分塊的邏輯地址和選取的備用 條帶中各個分塊的物理地址的對應(yīng)關(guān)系。
方式B、建立損壞磁道上主用條帶中各個分塊的物理地址和選取的備用 條帶中各個分塊的物理地址的對應(yīng)關(guān)系。
步驟308:當(dāng)磁盤陣列具有容錯機制時,將損壞磁道上主用條帶中各個分塊的數(shù)據(jù)重建到選取的備用條帶的各個分塊中。
磁盤陣列的類型包括具有容錯機制的磁盤陣列和不具有容錯機制的磁 盤陣列。其中容錯機制是指,磁盤陣列中每一個條帶的數(shù)據(jù)都存在備份數(shù)據(jù) 或校驗值,當(dāng)條帶中部分分塊的數(shù)據(jù)不可用時,能夠利用其他分塊中的備用 數(shù)據(jù)或者利用條帶中其他分塊的數(shù)據(jù)和校驗值,恢復(fù)出該原本不可用的分塊 的數(shù)據(jù)。
在現(xiàn)有技術(shù)中,對于具有容錯機制的磁盤陣列,是在更換新的磁盤后, 利用其他分塊中的備用數(shù)據(jù)或者利用條帶中其他分塊的數(shù)據(jù)和校驗值,恢復(fù) 出原本不可用的分塊的數(shù)據(jù),并將被更換磁盤的所有分塊數(shù)據(jù)復(fù)制到新的磁
盤中。而在本發(fā)明中,對于具有容錯機制的磁盤陣列比如Raidl、 Raid3、 Raid5、 Raid6、 RaidlO、 RaidOl以及Raid50級別,僅將損壞石茲道上主用條 帶中各個分塊的數(shù)據(jù)重建到選取的備用條帶中的各個分塊。比如,參見圖 4a或圖4b(其中,圖4a對應(yīng)于步驟301至步驟302采用方式一,圖4b對 應(yīng)于步驟301至步驟302采用方式二),在本步驟中,將損壞磁道上主用條 帶3中各個分塊的數(shù)據(jù)重建到選取的備用條帶O或備用條帶a中的各個分塊, 具體的重建思想與現(xiàn)有技術(shù)相同假如主用條帶3中的D9分塊所在的;茲道 部分損壞,那么,在重建過程中,利用條帶3中的其他分塊和校驗值P3恢 復(fù)出D9分塊的數(shù)據(jù),并將該條帶3中所有分塊的數(shù)據(jù)復(fù)制到備用條帶0或 備用條帶a中的各個分塊。
需要說明的是,如果磁盤陣列不具有容錯機制,比如對于RaidO級別, 則無需執(zhí)行本步驟的過程。
步驟309:接收到對損壞磁道上主用條帶中的分塊的訪問指令,該訪問 指令中攜帶該分塊的邏輯地址。
步驟310:根據(jù)該訪問指令中分塊的邏輯地址和步驟307中建立的對應(yīng) 關(guān)系查找到選取的備用條帶中的分塊,并訪問該備用條帶中的分塊。
如果在上述步驟307中采用方式A建立對應(yīng)關(guān)系,那么,本步驟中, 直接根據(jù)訪問指令中的分塊的邏輯地址在所建立的對應(yīng)關(guān)系中查找到選取的備用條帶中分塊的物理地址,從而可以訪問該備用條帶中的各個分塊。
如果在上述步驟307中采用方式B建立對應(yīng)關(guān)系,那么,本步驟中, 首先根據(jù)訪問指令中分塊的邏輯地址轉(zhuǎn)換出該分塊的物理地址,然后,利用 該物理地址在所建立的對應(yīng)關(guān)系中查找到選取的備用條帶中分塊的物理地 址,從而可以訪問該備用條帶中的分塊。
比如,參見圖4a,訪問指令中需要訪問的是條帶3中的D9分塊和D10 分塊的數(shù)據(jù),而實際上條帶3所在磁道損壞使得該D9分塊的數(shù)據(jù)不可用, 因此,利用本步驟的處理,查找到備用條帶0中對應(yīng)的D9分塊和D10分塊, 并訪問該D9分塊和D10分塊的數(shù)據(jù)。
可以看出,對于具有容錯機制的磁盤陣列,由于損壞磁道上主用條帶的 各個分塊的數(shù)據(jù)重建到了備用條帶的各個分塊中,這樣,歷史數(shù)據(jù)仍然存在, 因此,可以訪問歷史數(shù)據(jù);當(dāng)然,在后續(xù)過程中,可以對備用條帶分塊中的 歷史數(shù)據(jù)進行更新,從而還可以訪問新的數(shù)據(jù)。然而,對于不具有容錯機制 的磁盤陣列,由于無法進行重建過程,因此,損壞磁道上主用條帶的各個分 塊中的歷史數(shù)據(jù)則丟失了,這樣,是利用備用條帶中的各個分塊來代替損壞 磁道上主用條帶的各個分塊進行后續(xù)的數(shù)據(jù)訪問。
在上述圖3所示流程中,為了進一步提高磁盤的可用性,當(dāng)首次選取的 備用條帶所在的磁道也損壞時,再次選取空閑的其他備用條帶,比如,參見 圖4a,當(dāng)首次選取的備用條帶O所在磁道也損壞時,則再次選取出備用條帶 1,將原建立的主用條帶3中各個分塊的地址與備用條帶0中各個分塊的地 址的對應(yīng)關(guān)系更新為主用條帶3中各個分塊的地址與備用條帶1中各個分塊 的地址的對應(yīng)關(guān)系,并在磁盤陣列具有容錯機制時,將備用條帶O各個分塊 的數(shù)振重建到備用條帶1的各個分塊中;后續(xù),接收到對主用條帶3中分塊 的訪問指令時,根據(jù)訪問指令中分塊的地址和更新后的對應(yīng)關(guān)系查找到備用 條帶1中對應(yīng)的分塊,并訪問該備用條帶1中對應(yīng)的分塊。
實施例2:
本實施例2針對的情況是以分塊作為本發(fā)明中提及的數(shù)據(jù)存儲空間,即作為 一 次備份對象,將受磁道損壞影響的主用的分塊利用備用分塊來代 替,從而提高^f茲盤的可用性。
圖5是本發(fā)明實施例2的流程圖。參見圖5,在本發(fā)明實施例2中,提 高石茲盤可用性的實現(xiàn)過程具體包括以下步驟
步驟501~步驟502的所有描述分別與步驟301~步驟302的所有描述相 同,只需將其中的圖4a換為圖6a,以及將其中的圖4b換為圖6b。
步驟503:將主用條帶中的分塊設(shè)置為主用分塊,以及將備用條帶中的 分塊設(shè)置為備用分塊。
步驟504~步驟505的所有描述分別與步驟303 步驟304的所有描述相同。
步驟506:確定該損壞-茲道上的主用分塊。
本步驟中,具體是利用磁盤上損壞磁道的地址以及磁盤上各個主用條帶 中各個分塊的地址,確定出位于該損壞磁道上的主用分塊,比如,損壞磁道 上的主用分塊是圖6a和圖6b中所示的條帶3中的D9分塊。
步驟507:選取空閑狀態(tài)的備用分塊,并將該選取的備用分塊設(shè)置為使 用狀態(tài)。
如果上述步驟501和步驟502采用方式一實現(xiàn),那么,本步驟中,是在 磁盤陣列內(nèi)部選取備用條帶中空閑狀態(tài)的備用分塊。比如,參見圖6a,選取 磁盤陣列5內(nèi)部備用條帶0中空閑狀態(tài)的一個備用分塊。
如果上述步驟501和步驟502采用方式二實現(xiàn),那么,本步驟中,是在 獨立于磁盤陣列的共享磁盤空間中選取備用條帶中空閑狀態(tài)的備用分塊。比 如,參見圖6b,選取磁盤陣列5及其他磁盤陣列共享的磁盤空間內(nèi)部備用 條帶a中空閑狀態(tài)的 一個備用分塊。
步驟508:建立損壞磁道上主用分塊的地址和選取的備用分塊地址的對 應(yīng)關(guān)系。
在本步驟中,建立對應(yīng)關(guān)系的方式也可以有如下兩種方式
方式A,、建立損壞磁道上主用分塊的邏輯地址和選取的備用分塊的物理地址的對應(yīng)關(guān)系。
方式B,、建立損壞磁道上主用分塊的物理地址和選取的備用分塊的物 理地址的對應(yīng)關(guān)系。
步驟509:當(dāng)磁盤陣列具有容錯機制時,將損壞磁道上主用分塊的數(shù)據(jù) 重建到選取的備用分塊中。
對于具有容錯機制的磁盤陣列比如Raidl、 Raid3、 Raid5、 Raid6、 RaidlO、 RaidOl以及Raid50級別,參見圖6a或圖6b (其中,圖6a對應(yīng)于步驟501 至步驟502采用方式一,圖6b對應(yīng)于步驟501至步驟502采用方式二), 在本步驟中,僅將損壞磁道上主用分塊D9的數(shù)據(jù)重建到備用條帶O或備用 條帶a中選取的分塊中,具體的重建思想與現(xiàn)有技術(shù)相同利用條帶3中的 其他分塊和校驗值P3恢復(fù)出D9分塊的數(shù)據(jù),將恢復(fù)出的D9分塊的數(shù)據(jù)復(fù) 制到備用條帶O或備用條帶a中選取的分塊中。
需要說明的是,如果磁盤陣列不具有容錯機制,比如對于RaidO級別, 則無需執(zhí)行本步驟的過程。
步驟510:接收到對損壞磁道上主用分塊的訪問指令,該訪問指令中攜 帶該分塊的邏輯地址。
步驟511:根據(jù)該訪問指令中分塊的邏輯地址和已建立的對應(yīng)關(guān)系查找 到在備用條帶中選取的備用分塊,并訪問該備用分塊。
如果在上述步驟508中采用方式A,建立對應(yīng)關(guān)系,那么,本步驟中, 直接根據(jù)訪問指令中的分塊的邏輯地址在所建立的對應(yīng)關(guān)系中查找到選取 的備用分塊的物理地址,從而可以訪問該備用分塊。
如果在上述步驟508中采用方式B,建立對應(yīng)關(guān)系,那么,本步驟中, 首先根據(jù)訪問指令中分塊的邏輯地址轉(zhuǎn)換出該分塊的物理地址,然后,利用 該物理地址在所建立的對應(yīng)關(guān)系中查找到選取的備用分塊的物理地址,從而 可以訪問該備用分塊。
比如,參見圖6a,訪問指令中需要訪問的是條帶3中的D9分塊,而實 際上D9分塊的數(shù)據(jù)不可用,因此,利用本步驟的處理,查找到備用條帶O中對應(yīng)的D9分塊,并訪問該D9分塊的數(shù)據(jù)。
在上述圖5所示流程中,為了進一步提高磁盤的可用性,當(dāng)首次選取的 備用分塊所在的石茲道也損壞時,再次選取空閑的其他備用分塊,比如,參見 圖6a,當(dāng)首次選取的備用條帶0中的備用分塊所在磁道也損壞時,則再次選 取出備用條帶1中的備用分塊,將原建立的主用條帶3中D9分塊的地址與 備用條帶0中D9分塊的地址的對應(yīng)關(guān)系更新為主用條帶3中D9分塊的地 址與備用條帶1中D9分塊的地址的對應(yīng)關(guān)系,并在磁盤陣列具有容錯機制 時,將備用條帶0中D9分塊的數(shù)據(jù)重建到備用條帶1的D9分塊中;后續(xù), 接收到對主用條帶3中D9分塊的訪問指令時,根據(jù)訪問指令中分塊的地址 和更新后的對應(yīng)關(guān)系查找到備用條帶1中對應(yīng)的D9分塊,并訪問該備用條 帶1中對應(yīng)的D9分塊。
在本發(fā)明方法中,各個步驟的執(zhí)行主體可以是能夠?qū)Υ疟P陣列的訪問進 行控制的磁盤陣列控制器。
另外,本發(fā)明還提出了一種磁盤陣列控制器。參見圖7,該磁盤陣列控 制器包括
磁盤空間設(shè)置模塊,設(shè)置一個以上備用數(shù)據(jù)存儲空間,以及在磁盤陣列中 設(shè)置主用數(shù)據(jù)存儲空間;
異常處理模塊,當(dāng)檢測出磁盤陣列中磁盤的部分磁道損壞時,確定該損壞 磁道上的第一主用數(shù)據(jù)存儲空間,選取空閑的第一備用數(shù)據(jù)存儲空間,保存第 一主用數(shù)據(jù)存儲空間包括的分塊的地址和第一備用數(shù)據(jù)存儲空間包括的分塊的 地址的對應(yīng)關(guān)系;
訪問處理沖莫塊,如果接收到對第一主用數(shù)據(jù)存儲空間包括的分塊的訪問指 令,根據(jù)該訪問指令中分塊的地址和異常處理模塊中保存的對應(yīng)關(guān)系查找到第 一備用數(shù)據(jù)存儲空間包括的分塊,并訪問該第一備用數(shù)據(jù)存儲空間包括的分塊。
所述磁盤空間設(shè)置模塊,進一步用于根據(jù)所需的所述磁盤陣列的存儲空間 大小和預(yù)先設(shè)定的備用數(shù)據(jù)存儲空間的大小,創(chuàng)建所述磁盤陣列,在該磁盤陣 列中執(zhí)或者,
所述磁盤空間設(shè)置模塊,進一步用于根據(jù)所需的所述磁盤陣列的存儲空間 大小創(chuàng)建所述》茲盤陣列,劃分出包括所述》茲盤陣列在內(nèi)的多個》茲盤陣列共享的 磁盤空間,在該共享的磁盤空間中執(zhí)行所述設(shè)置一個以上備用數(shù)據(jù)存儲空間的處理。
當(dāng)所述磁盤陣列具有容錯機制時,
所述異常處理模塊,進一步用于將第一主用數(shù)據(jù)存儲空間包括的分塊的數(shù) 據(jù)重建到所述第 一備用數(shù)據(jù)存儲空間包括的分塊中。
所述異常處理模塊,進一步用于在第一備用數(shù)據(jù)存儲空間所在的》茲道損壞 時,選取空閑的第二備用數(shù)據(jù)存儲空間,將保存的對應(yīng)關(guān)系更新為第一主用數(shù) 據(jù)存儲空間包括的分塊的地址和第二備用數(shù)據(jù)存儲空間包括的分塊的地址的對 應(yīng)關(guān)系,并在所述磁盤陣列具有容錯機制時,將第 一備用數(shù)據(jù)存儲空間包括的
分塊的數(shù)據(jù)重建到第二備用數(shù)據(jù)存儲空間包括的分塊中;
所述訪問處理模塊,進一步用于接收對第一主用數(shù)據(jù)存儲空間包括的分塊 的訪問指令,根據(jù)訪問指令中分塊的地址和所述異常處理模塊中的對應(yīng)關(guān)系查 找到第二備用數(shù)據(jù)存儲空間包括的分塊,并訪問該第二備用數(shù)據(jù)存儲空間包括 的分塊。
較佳地,所述磁盤空間設(shè)置模塊是將條帶或分塊作為所述數(shù)據(jù)存儲空間 執(zhí)行所述設(shè)置的處理。
需要說明的是,本發(fā)明適用于具有容錯機制或不具有容錯機制的任意一 種級別的磁盤陣列,比如,Raid0、 Raidl、 Raid3、 Raid5、 Raid6、 Ra畫、 Raid01、 Raid50。
本發(fā)明可以體現(xiàn)為 一個計算機程序產(chǎn)品,其可以承載于多種存儲介質(zhì) 中,其包括若干指令,用來讓一個硬件平臺(如前述的磁盤陣列控制器)完 成上述方法。從設(shè)備層面的理解, 一個基于本發(fā)明的設(shè)備可以包括一個上述 計算^4呈序產(chǎn)品以及運^f亍該計算^4呈序的硬件平臺。
具體地,本發(fā)明揭示了 一種計算機程序,該程序在執(zhí)行時包括如下步驟在磁盤陣列中設(shè)置主用數(shù)據(jù)存儲空間,在主用數(shù)據(jù)存儲空間所在的磁道正常
時,對主用數(shù)據(jù)存儲空間包括的分塊進行訪問;設(shè)置一個以上備用數(shù)據(jù)存儲 空間,當(dāng)檢測出磁盤陣列中磁盤的部分磁道損壞時,確定該損壞磁道上的第 一主用數(shù)據(jù)存儲空間;選取空閑的第一備用數(shù)據(jù)存儲空間,建立第一主用數(shù) 據(jù)存儲空間包括的分塊的地址和第一備用數(shù)據(jù)存儲空間包括的分塊的地址 的對應(yīng)關(guān)系;接收到對第一主用數(shù)據(jù)存儲空間包括的分塊的訪問指令,根據(jù) 該訪問指令中分塊的地址和所述對應(yīng)關(guān)系查找到第 一備用數(shù)據(jù)存儲空間包 括的分塊,并訪問該第一備用數(shù)據(jù)存儲空間包括的分塊。
該程序在執(zhí)行時,進一步地,根據(jù)所需的所述磁盤陣列的存儲空間大小 和預(yù)先設(shè)定的備用數(shù)據(jù)存儲空間的大小,創(chuàng)建所述磁盤陣列;則所述設(shè)置一 個以上備用數(shù)據(jù)存儲空間的步驟包括在所述磁盤陣列中設(shè)置一個以上備用 數(shù)據(jù)存儲空間;或者,
根據(jù)所需的所述磁盤陣列的存儲空間大小創(chuàng)建所述磁盤陣列;則所述設(shè) 置 一 個以上備用數(shù)據(jù)存儲空間的步驟包括劃分出包括所述磁盤陣列在內(nèi)的 多個磁盤陣列共享的磁盤空間,在該共享的磁盤空間中設(shè)置 一 個以上備用數(shù) 據(jù)存儲空間。
當(dāng)所述磁盤陣列具有容錯機制時,該程序在執(zhí)行時進一步在所述選取 空閑的第一備用數(shù)據(jù)存儲空間之后,并在所述接收到對第一主用數(shù)據(jù)存儲空 間包括的分塊的訪問指令之前,包括將第一主用數(shù)據(jù)存儲空間包括的分塊 的數(shù)據(jù)重建到所述第一備用數(shù)據(jù)存儲空間包括的分塊中。
所述訪問指令中分塊的地址為該分塊的邏輯地址;
建立所述對應(yīng)關(guān)系的步驟包括建立第 一主用數(shù)據(jù)存儲空間包括的分塊 的邏輯地址和第 一備用數(shù)據(jù)存儲空間包括的分塊的物理地址的對應(yīng)關(guān)系。
所述訪問指令中分塊的地址為該分塊的邏輯地址;
建立所述對應(yīng)關(guān)系的步驟包括建立第 一主用數(shù)據(jù)存儲空間包括的分塊 的物理地址和第 一備用數(shù)據(jù)存儲空間包括的分塊的物理地址的對應(yīng)關(guān)系;
所述查找到第 一備用數(shù)據(jù)存儲空間包括的分塊的步驟包括根據(jù)訪問指令中分塊的邏輯地址轉(zhuǎn)換出該分塊的物理地址,再根據(jù)該分塊的物理地址和 所述對應(yīng)關(guān)系查找到第 一備用數(shù)據(jù)存儲空間包括的分塊。
該程序在執(zhí)行時進一步包括
當(dāng)?shù)?一備用數(shù)據(jù)存儲空間所在的磁道損壞時,選取空閑的第二備用數(shù)據(jù) 存儲空間,將所述對應(yīng)關(guān)系更新為第一主用數(shù)據(jù)存儲空間包括的分塊的地址 和第二備用數(shù)據(jù)存儲空間包括的分塊的地址的對應(yīng)關(guān)系,并在所述磁盤陣列 具有容錯機制時,將第 一備用數(shù)據(jù)存儲空間中包括的分塊的數(shù)據(jù)重建到第二 備用數(shù)據(jù)存儲空間包括的分塊中;
接收對第 一 主用數(shù)據(jù)存儲空間包括的分塊的訪問指令,根據(jù)訪問指令中 分塊的地址和更新后的對應(yīng)關(guān)系查找到第二備用數(shù)據(jù)存儲空間包括的分塊, 并訪問該第二備用數(shù)據(jù)存儲空間包括的分塊。
所述數(shù)據(jù)存儲空間為條帶或分塊。
總之,以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的 保護范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改 進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1、一種提高磁盤可用性的方法,在磁盤陣列中設(shè)置主用數(shù)據(jù)存儲空間,在主用數(shù)據(jù)存儲空間所在的磁道正常時,對主用數(shù)據(jù)存儲空間包括的分塊進行訪問;其特征在于,設(shè)置一個以上備用數(shù)據(jù)存儲空間,該方法還包括當(dāng)檢測出磁盤陣列中磁盤的部分磁道損壞時,確定該損壞磁道上的第一主用數(shù)據(jù)存儲空間;選取空閑的第一備用數(shù)據(jù)存儲空間,建立第一主用數(shù)據(jù)存儲空間包括的分塊的地址和第一備用數(shù)據(jù)存儲空間包括的分塊的地址的對應(yīng)關(guān)系;接收到對第一主用數(shù)據(jù)存儲空間包括的分塊的訪問指令,根據(jù)該訪問指令中分塊的地址和所述對應(yīng)關(guān)系查找到第一備用數(shù)據(jù)存儲空間包括的分塊,并訪問該第一備用數(shù)據(jù)存儲空間包括的分塊。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,該方法進一步包括根據(jù)所需的所述磁盤陣列的存儲空間大小和預(yù)先設(shè)定 的備用數(shù)據(jù)存儲空間的大小,創(chuàng)建所述磁盤陣列;則所述設(shè)置一個以上備用數(shù) 據(jù)存儲空間的步驟包括在所述磁盤陣列中設(shè)置一個以上備用數(shù)據(jù)存儲空間;或者,該方法進 一 步包括根據(jù)所需的所述磁盤陣列的存儲空間大小創(chuàng)建所述磁 盤陣列;則所述設(shè)置一個以上備用數(shù)據(jù)存儲空間的步驟包括劃分出包括所述 磁盤陣列在內(nèi)的多個磁盤陣列共享的磁盤空間,在該共享的磁盤空間中設(shè)置一 個以上備用數(shù)據(jù)存儲空間。
3、 根據(jù)權(quán)利要求1所述的方法,其特征在于,當(dāng)所述磁盤陣列具有容錯機 制時,在所述選取空閑的第一備用數(shù)據(jù)存儲空間之后,并在所述接收到對第一主 用數(shù)據(jù)存儲空間包括的分塊的訪問指令之前,進一步包括將第一主用數(shù)據(jù)存 儲空間包括的分塊的數(shù)據(jù)重建到所述第一備用數(shù)據(jù)存儲空間包括的分塊中。
4、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述訪問指令中分塊的地址為該分塊的邏輯地址;建立所述對應(yīng)關(guān)系的步驟包括建立第一主用數(shù)據(jù)存儲空間包括的分塊的 邏輯地址和第一備用數(shù)據(jù)存儲空間包括的分塊的物理地址的對應(yīng)關(guān)系。
5、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述訪問指令中分塊的地址 為該分塊的邏輯地址;建立所述對應(yīng)關(guān)系的步驟包括建立第一主用數(shù)據(jù)存儲空間包括的分塊的 物理地址和第 一備用數(shù)據(jù)存儲空間包括的分塊的物理地址的對應(yīng)關(guān)系;所述查找到第一備用數(shù)據(jù)存儲空間包括的分塊的步驟包括根據(jù)訪問指令 中分塊的邏輯地址轉(zhuǎn)換出該分塊的物理地址,再根據(jù)該分塊的物理地址和所述 對應(yīng)關(guān)系查找到第 一備用數(shù)據(jù)存儲空間包括的分塊。
6、 根據(jù)權(quán)利要求1所述的方法,其特征在于,該方法進一步包括當(dāng)?shù)?一備用數(shù)據(jù)存儲空間所在的磁道損壞時,選取空閑的第二備用數(shù)據(jù)存 儲空間,將所述對應(yīng)關(guān)系更新為第一主用數(shù)據(jù)存儲空間包括的分塊的地址和第 二備用數(shù)據(jù)存儲空間包括的分塊的地址的對應(yīng)關(guān)系,并在所述磁盤陣列具有容 錯機制時,將第一備用數(shù)據(jù)存儲空間中包括的分塊的數(shù)據(jù)重建到第二備用數(shù)據(jù) 存儲空間包括的分塊中;接收對第一主用數(shù)據(jù)存儲空間包括的分塊的訪問指令,根據(jù)訪問指令中分 塊的地址和更新后的對應(yīng)關(guān)系查找到第二備用數(shù)據(jù)存儲空間包括的分塊,并訪 問該第二備用數(shù)據(jù)存儲空間包括的分塊。
7、 根據(jù)權(quán)利要求1至6中任意一項所述的方法,其特征在于,所述數(shù)據(jù)存 儲空間為條帶或分塊。
8、 一種磁盤陣列控制器,其特征在于,包括磁盤空間設(shè)置模塊,設(shè)置一個以上備用數(shù)據(jù)存儲空間,以及在磁盤陣列中 設(shè)置主用數(shù)據(jù)存儲空間;異常處理模塊,當(dāng)檢測出磁盤陣列中磁盤的部分磁道損壞時,確定該損壞 磁道上的第一主用數(shù)據(jù)存儲空間,選取空閑的第一備用數(shù)據(jù)存儲空間,保存第 一主用數(shù)據(jù)存儲空間包括的分塊的地址和第一備用數(shù)據(jù)存儲空間包括的分塊的地址的對應(yīng)關(guān)系;訪問處理模塊,如果接收到對第一主用數(shù)據(jù)存儲空間包括的分塊的訪問指 令,根據(jù)該訪問指令中分塊的地址和異常處理模塊中保存的對應(yīng)關(guān)系查找到第 一備用數(shù)據(jù)存儲空間包括的分塊,并訪問該第一備用數(shù)據(jù)存儲空間包括的分塊。
9、 根據(jù)權(quán)利要求8所述的磁盤陣列控制器,其特征在于,所述磁盤空間設(shè) 置模塊,進一步用于根據(jù)所需的所述磁盤陣列的存儲空間大小和預(yù)先設(shè)定的備 用數(shù)據(jù)存儲空間的大小,創(chuàng)建所述磁盤陣列,在該磁盤陣列中執(zhí)行所述設(shè)置一 個以上備用數(shù)據(jù)存儲空間的處理;或者,所述磁盤空間設(shè)置模塊,進一步用于根據(jù)所需的所述磁盤陣列的存儲空間 大小創(chuàng)建所述磁盤陣列,劃分出包括所述磁盤陣列在內(nèi)的多個磁盤陣列共享的 磁盤空間,在該共享的磁盤空間中執(zhí)行所述設(shè)置一個以上備用數(shù)據(jù)存儲空間的處理。
10、 根據(jù)權(quán)利要求8所述的磁盤陣列控制器,其特征在于,當(dāng)所述磁盤陣 列具有容錯機制時,所述異常處理模塊,進一步用于將第一主用數(shù)據(jù)存儲空間包括的分塊的數(shù) 據(jù)重建到所述第一備用數(shù)據(jù)存儲空間包括的分塊中。
11、 根據(jù)權(quán)利要求8所述的磁盤陣列控制器,其特征在于,所述異常處理 模塊,進一步用于在第一備用數(shù)據(jù)存儲空間所在的磁道損壞時,選取空閑的第 二備用數(shù)據(jù)存儲空間,將保存的對應(yīng)關(guān)系更新為第一主用數(shù)據(jù)存儲空間包括的 分塊的地址和第二備用數(shù)據(jù)存儲空間包括的分塊的地址的對應(yīng)關(guān)系,并在所述 磁盤陣列具有容錯機制時,將第一備用數(shù)據(jù)存儲空間包括的分塊的數(shù)據(jù)重建到 第二備用數(shù)據(jù)存儲空間包括的分塊中;所述訪問處理模塊,進一步用于接收對第一主用數(shù)據(jù)存儲空間包括的分塊 的訪問指令,根據(jù)訪問指令中分塊的地址和所述異常處理模塊中的對應(yīng)關(guān)系查 找到第二備用數(shù)據(jù)存儲空間包括的分塊,并訪問該第二備用數(shù)據(jù)存儲空間包括的分塊。
12、根據(jù)權(quán)利要求8至11中任意一項所述的磁盤陣列控制器,其特征在于,所述磁盤空間設(shè)置模塊,將條帶或分塊作為所述數(shù)據(jù)存儲空間執(zhí)行所述設(shè)置的 處理。
全文摘要
本發(fā)明公開了一種提高磁盤可用性的方法和磁盤陣列控制器。該方法包括在磁盤陣列中設(shè)置主用數(shù)據(jù)存儲空間,設(shè)置一個以上備用數(shù)據(jù)存儲空間;當(dāng)檢測出磁盤陣列中磁盤的部分磁道損壞時,確定該損壞磁道上的第一主用數(shù)據(jù)存儲空間;選取空閑的第一備用數(shù)據(jù)存儲空間,建立第一主用數(shù)據(jù)存儲空間包括的分塊的地址和第一備用數(shù)據(jù)存儲空間包括的分塊的地址的對應(yīng)關(guān)系;接收到對第一主用數(shù)據(jù)存儲空間包括的分塊的訪問指令,根據(jù)該訪問指令中分塊的地址和所述對應(yīng)關(guān)系查找到第一備用數(shù)據(jù)存儲空間包括的分塊,并訪問該第一備用數(shù)據(jù)存儲空間包括的分塊。本發(fā)明能夠提高磁盤陣列中磁盤的可用性。
文檔編號G11B33/00GK101567211SQ20091008573
公開日2009年10月28日 申請日期2009年5月27日 優(yōu)先權(quán)日2009年5月27日
發(fā)明者曉 李 申請人:杭州華三通信技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
阳江市| 崇义县| 双辽市| 开阳县| 白银市| 广南县| 吴旗县| 孝义市| 西和县| 宁南县| 五台县| 云浮市| 崇文区| 保靖县| 囊谦县| 潮州市| 资溪县| 胶南市| 乌鲁木齐县| 阜康市| 商水县| 乐都县| 桦南县| 古蔺县| 峨山| 山东省| 苍溪县| 博湖县| 沐川县| 新河县| 大悟县| 台北市| 威海市| 南通市| 鄯善县| 苗栗县| 周至县| 宜丰县| 绥滨县| 时尚| 宜章县|