專利名稱:數(shù)據(jù)保護方法
技術領域:
本發(fā)明是關于一種數(shù)據(jù)保護方法,特別是關于一種應用在數(shù)據(jù)存儲系統(tǒng)的數(shù)據(jù)保護方法。
背景技術:
目前一般大型數(shù)據(jù)庫儲存系統(tǒng)大多采用獨立磁盤冗余陣列(Redundant Array ofIndependent Disks;RAID)的形式。所謂獨立磁盤冗余陣列是將許多小容量的磁盤驅動器組成磁盤陣列(disk array),用來儲存大量的數(shù)據(jù),而獨立磁盤冗余陣列的目的是將相同的數(shù)據(jù)儲存在多個磁盤中不同的地方,改善了存儲子系統(tǒng)的功效,其優(yōu)點是提供較佳的功效以及/或數(shù)據(jù)錯誤容忍度。
獨立磁盤冗余陣列是通過將工作量平行分散在多個實體磁盤中實現(xiàn)較佳的功效。通過同時在單個磁盤驅動器存取數(shù)據(jù)產(chǎn)生的加乘效果,在儲存數(shù)據(jù)時,將數(shù)據(jù)切割成多個數(shù)據(jù)區(qū)塊分別存放在磁盤陣列的各個磁盤驅動器中,在讀取數(shù)據(jù)時,也同時從多個磁盤驅動器中讀取數(shù)據(jù),增加數(shù)據(jù)存取的速度,進而提高整體磁盤系統(tǒng)的功效。
另外,利用數(shù)據(jù)多重操作,當一個(或多個)磁盤驅動器或扇區(qū)發(fā)生問題時,可以在另一個磁盤驅動器中找到數(shù)據(jù)的備份,這樣具有較好的容錯性,也就是,獨立磁盤冗余陣列具有多種層級(level),每一個層級代表一種數(shù)據(jù)區(qū)塊在磁盤陣列中的配置方式,如果磁盤陣列以某些層級儲存數(shù)據(jù),一但磁盤陣列中有某個磁盤驅動器發(fā)生故障,即可根據(jù)其余可正常執(zhí)行的磁盤驅動器,完整的重建該故障磁盤驅動器中儲存的數(shù)據(jù)區(qū)塊,提高了數(shù)據(jù)儲存的安全性。
獨立磁盤冗余陣列具有幾種不同的層級,每個層級提供不同的安全性與儲存容量,使用者可以根據(jù)自身的需求,選擇不同獨立磁盤冗余陣列的層級以設定整個磁盤陣列的配置方式,以下分別敘述幾種常用獨立磁盤冗余陣列的層級
第0級獨立磁盤冗余陣列(RAID0)是把數(shù)組中所有磁盤驅動器看作一個大型磁盤驅動器,其容量大約等于磁盤陣列中所有磁盤容量的總和(磁盤驅動器的數(shù)量×最小的磁盤驅動器容量),數(shù)據(jù)被分散地儲存在磁盤陣列中的任一個磁盤中。由于能以并行(parallel)方式同時進行多重的讀取及寫入,所以磁盤陣列的存取效率要比真正的單一大型磁盤的效率好,其效率約與磁盤陣列中磁盤驅動器的個數(shù)成正比。一般是在存取大量連續(xù)性數(shù)據(jù)(例如影音多媒體數(shù)據(jù))時會有較好的功效。但是,第0級獨立磁盤冗余陣列并不具備容錯的能力,只要有任何一個磁盤驅動器產(chǎn)生故障,整個磁盤陣列儲存的數(shù)據(jù)都會受到影響。
第1級獨立磁盤冗余陣列(RAID1)又稱為鏡像(mirroring)磁盤陣列,當數(shù)據(jù)寫入第1級獨立磁盤冗余陣列時,會在各個磁盤驅動器中各寫入一次,因此,必須在磁盤陣列中所有的磁盤驅動器同時故障,數(shù)據(jù)才會被損毀,與第0級獨立磁盤冗余陣列相比,第1級獨立磁盤冗余陣列的配置方式雖然數(shù)據(jù)儲存的安全性較佳,但是磁盤陣列的數(shù)據(jù)儲存量較小,所以第1級獨立磁盤冗余陣列常用于安全性要求較高的多人使用環(huán)境。
第5級獨立磁盤冗余陣列(RAID5)與第0級獨立磁盤冗余陣列相同,是將多個小容量磁盤驅動器仿真成大容量磁盤驅動器,借由同位字節(jié)奇偶校驗(parity)的方式儲存冗余數(shù)據(jù)(redundancy)。在磁盤陣列被寫入數(shù)據(jù)的同時,第5級獨立磁盤冗余陣列會根據(jù)寫入的數(shù)據(jù)產(chǎn)生冗余數(shù)據(jù),再將冗余數(shù)據(jù)儲存在磁盤陣列中。同位字節(jié)奇偶校驗分散地儲存在磁盤陣列的各個磁盤驅動器中,且其數(shù)據(jù)量相當于一個磁盤驅動器的容量,由于一般數(shù)據(jù)與同位字節(jié)奇偶校驗是散布在磁盤陣列的各個磁盤驅動器中,因此,當磁盤陣列中任何一個磁盤驅動器產(chǎn)生故障時,可以根據(jù)其它正常磁盤驅動器儲存的同位字節(jié)奇偶校驗和儲存數(shù)據(jù)重建儲存在該故障磁盤驅動器的數(shù)據(jù)。因此,為了確保數(shù)據(jù)的安全性,第5級獨立磁盤冗余陣列必須利用相當于一個磁盤驅動器的容量儲存冗余數(shù)據(jù)。
綜上所述,使用者若需使用安全性高的層級,可以根據(jù)自身的需求,選擇第1級獨立磁盤冗余陣列或第5級獨立磁盤冗余陣列的配置方式。在讀取數(shù)據(jù)時,若有故障(如壞道),可利用第1級獨立磁盤冗余陣列或第5級獨立磁盤冗余陣列將數(shù)據(jù)重構后恢復。但是,由于獨立磁盤冗余陣列本身的限制,其最多僅能有一個磁盤驅動器產(chǎn)生壞道才可重建數(shù)據(jù)。若當讀取數(shù)據(jù)時,有一磁盤驅動器產(chǎn)生壞道,第1級獨立磁盤冗余陣列或第5級獨立磁盤冗余陣列會自動將數(shù)據(jù)重構后恢復,此時,產(chǎn)生壞道的磁盤驅動器仍處于故障狀態(tài),當另一個對應該磁盤驅動器壞道區(qū)域的磁盤驅動器的磁道也產(chǎn)生壞道時,數(shù)據(jù)則無法重建,導致數(shù)據(jù)損毀。
因此,如何能使磁盤驅動器中的壞道數(shù)據(jù)能重新備份在磁盤驅動器的其它磁道,順利進行數(shù)據(jù)的存取,是目前急待解決的問題。
發(fā)明內容
為克服上述現(xiàn)有技術的問題,本發(fā)明的主要目的在于提供一種數(shù)據(jù)保護方法,供使用者順利讀取數(shù)據(jù)。
本發(fā)明的另一目的在于提供一種數(shù)據(jù)保護方法,避免互相對應的兩個存儲單元中存儲區(qū)塊損壞,造成存儲單元中儲存數(shù)據(jù)損毀情況的發(fā)生。
為實現(xiàn)上述及其它目的,本發(fā)明提供一種數(shù)據(jù)保護方法,應用在數(shù)據(jù)存儲系統(tǒng),在該數(shù)據(jù)存儲系統(tǒng)內的多個存儲單元中儲存的數(shù)據(jù)不會因互相對應的兩個存儲單元存儲區(qū)塊損壞造成數(shù)據(jù)的損毀,該方法是在讀取存儲單元數(shù)據(jù)失敗時,重新建立該數(shù)據(jù)且重新將該數(shù)據(jù)寫入該存儲單元其它非損壞的存儲區(qū)塊,并為使用者恢復該數(shù)據(jù)。
本發(fā)明提供一種數(shù)據(jù)保護方法,應用在采用磁盤陣列的磁盤系統(tǒng),在該磁盤系統(tǒng)內的多個磁盤驅動器中儲存的數(shù)據(jù)不會因互相對應的兩個磁盤驅動器磁道損壞造成數(shù)據(jù)的損毀,該方法包括(1)判斷在磁盤陣列的狀態(tài)下讀取一磁盤驅動器的數(shù)據(jù)是否產(chǎn)生錯誤,若是,則進到步驟(2),若否,則進到步驟(5);(2)利用磁盤陣列重建該數(shù)據(jù);(3)將該數(shù)據(jù)寫入該磁盤驅動器并判斷是否無法寫入,若是,則進到步驟(4),若否,則進到步驟(5);(4)告知該使用者該數(shù)據(jù)無法寫入;以及(5)為使用者恢復該數(shù)據(jù)。
綜上所述,與現(xiàn)有技術產(chǎn)生的問題相比,本發(fā)明是在兩個相互對應的存儲單元存儲區(qū)塊損壞時,通過重新建立以及重新寫入數(shù)據(jù)的方式,不僅能順利讀取數(shù)據(jù),更可避免互相對應的兩個存儲單元存儲區(qū)塊損壞,造成存儲單元中儲存的數(shù)據(jù)損毀的情況發(fā)生。
圖1是本發(fā)明數(shù)據(jù)保護方法實施例的基本步驟流程圖;以及圖2A至圖2D顯示本發(fā)明數(shù)據(jù)保護方法實施例的數(shù)據(jù)存取動作的基本步驟流程。
具體實施例方式
實施例如圖1及圖2A至圖2D所示,是本發(fā)明數(shù)據(jù)保護方法的相關圖示,下面通過這些附圖配合說明,敘述本發(fā)明數(shù)據(jù)保護方法。該附圖僅以示意方式說明本發(fā)明的基本結構。因此,在附圖中僅顯示與本發(fā)明有關的組件與文字,且顯示的組件并非以實際實施時的數(shù)目、形狀及尺寸比例等繪制,實際實施時的數(shù)目、形狀及尺寸比例是一種選擇性的設計,其組件布局形態(tài)可能更為復雜。
本發(fā)明是一種數(shù)據(jù)保護方法,此方法應用在數(shù)據(jù)存儲系統(tǒng),令使用者在該數(shù)據(jù)存儲系統(tǒng)內多個存儲單元中儲存的數(shù)據(jù)不會因互相對應的兩個存儲單元存儲區(qū)塊損壞而造成數(shù)據(jù)的損毀。本方法包括在讀取存儲單元數(shù)據(jù)失敗時,重新建立該數(shù)據(jù)且重新將該數(shù)據(jù)寫入該存儲單元其它非損壞的存儲區(qū)塊,并為使用者恢復該數(shù)據(jù)。
圖1是本發(fā)明數(shù)據(jù)保護方法實施例的流程示意圖,表示實施例的基本步驟流程。此實施例應用在采用磁盤陣列(disk array)的磁盤系統(tǒng),令使用者在該磁盤系統(tǒng)內的多個磁盤驅動器中儲存的數(shù)據(jù)不會因互相對應的二個磁盤驅動器磁道損壞造成數(shù)據(jù)的損毀。
該方法首先執(zhí)行步驟S10。在步驟S10中,判斷在磁盤陣列的狀態(tài)下讀取一磁盤驅動器的數(shù)據(jù)時是否產(chǎn)生錯誤,也就是該磁盤系統(tǒng)在該使用者讀取一磁盤驅動器的數(shù)據(jù)時,先判斷是否無法取出該磁盤驅動器的數(shù)據(jù)。若是,則進到步驟S11,若否,則進到步驟S14。其中,該磁盤陣列是獨立磁盤冗余陣列(Redundant Array of Independent Disks;RAID),且是第1級獨立磁盤冗余陣列(RAID1)或第5級獨立磁盤冗余陣列(RAID5),此處所指的第1級獨立磁盤冗余陣列與第5級獨立磁盤冗余陣列的功能在本說明書的背景技術中已詳細解釋。
在步驟S11中,重建該數(shù)據(jù),即在磁盤陣列的狀態(tài)下讀取一磁盤驅動器的數(shù)據(jù)產(chǎn)生錯誤時,借由磁盤陣列的內建機制重建該數(shù)據(jù)。如圖2A所示,當該數(shù)據(jù)30無法在該磁盤驅動器C的磁道C1取出時,則如圖2B所示,借由磁盤陣列狀態(tài)下的其它正常磁盤驅動器A及B,利用鏡像(mirroring)或同位字節(jié)奇偶校驗(parity)的方式將該故障磁盤驅動器C的數(shù)據(jù)30重建為30′。接著進到步驟S12。
在步驟S12中,寫入該數(shù)據(jù)并判斷是否無法寫入。如圖2C所示,將該數(shù)據(jù)30′寫入該磁盤驅動器C其它非損壞的磁道C2,寫入該數(shù)據(jù)30′是借由壞道重映像(bad sector remap)功能實現(xiàn),此功能由該磁盤驅動器C提供。若該數(shù)據(jù)30′無法重新寫入該磁盤驅動器C其它非損壞的磁道C2,則進到步驟S13。該數(shù)據(jù)30′若可重新寫入該磁盤驅動器C其它非損壞的磁道C2,則進到步驟S14。
在步驟S13中,告知使用者該數(shù)據(jù)無法寫入。此步驟是數(shù)據(jù)無法重新寫入該磁盤驅動器其它非損壞的磁道的狀況,導致這種狀況的原因有以下兩種第一種是代表該磁盤驅動器已無可寫入的磁道,也就是該磁盤驅動器已無正常且空白的磁道,該磁盤系統(tǒng)即輸出一信息告知該使用者該數(shù)據(jù)無法寫入的原因是該磁盤驅動器已無法使用,也就是,該磁盤驅動器已損壞或已存滿數(shù)據(jù);另一種則代表該磁盤系統(tǒng)的重新寫入功能無法使用,該磁盤系統(tǒng)即輸出一信息告知該使用者該數(shù)據(jù)無法寫入的原因是該重新寫入功能無法使用,此處所指的重新寫入功能是如上所述由磁盤驅動器提供的壞道重映像功能,即此磁盤驅動器無法提供壞道重映像功能或是此功能已故障。接著進到步驟S14。
在步驟S14中,為使用者恢復該數(shù)據(jù)。如圖2D所示,將正常工作的磁盤驅動器的數(shù)據(jù)或借由磁盤陣列的內建機制重建的數(shù)據(jù)30′,恢復給該使用者100進行后續(xù)所需的相關處理。
綜上所述,本發(fā)明不僅能供使用者順利讀取數(shù)據(jù),更可實現(xiàn)數(shù)據(jù)保護的目的。另外,若使用者被告知該數(shù)據(jù)無法寫入的相關原因,使用者還可按照數(shù)據(jù)存儲系統(tǒng)(如磁盤系統(tǒng))輸出的信息進行后續(xù)處理(如替換全新的或具有壞道重映像功能的磁盤驅動器)。
權利要求
1.一種數(shù)據(jù)保護方法,應用在數(shù)據(jù)存儲系統(tǒng),在該數(shù)據(jù)存儲系統(tǒng)內的多個存儲單元中儲存的數(shù)據(jù)不會因互相對應的兩個存儲單元存儲區(qū)塊損壞造成數(shù)據(jù)的損毀,其特征在于,該方法包括在讀取存儲單元數(shù)據(jù)失敗時,重新建立該數(shù)據(jù)且重新將該數(shù)據(jù)寫入該存儲單元其它非損壞的存儲區(qū)塊,并為使用者恢復該數(shù)據(jù)。
2.如權利要求1所述的數(shù)據(jù)保護方法,其特征在于,該數(shù)據(jù)存儲系統(tǒng)是采用磁盤陣列。
3.如權利要求1所述的數(shù)據(jù)保護方法,其特征在于,該數(shù)據(jù)的讀取是在磁盤陣列狀態(tài)下對該數(shù)據(jù)存儲系統(tǒng)進行該數(shù)據(jù)的讀取。
4.如權利要求1所述的數(shù)據(jù)保護方法,其特征在于,重新建立該數(shù)據(jù)是借由該磁盤陣列實現(xiàn)。
5.如權利要求2所述的數(shù)據(jù)保護方法,其特征在于,該磁盤陣列是獨立磁盤冗余陣列。
6.如權利要求5所述的數(shù)據(jù)保護方法,其特征在于,該獨立磁盤冗余陣列是第1級獨立磁盤冗余陣列或第5級獨立磁盤冗余陣列。
7.如權利要求1所述的數(shù)據(jù)保護方法,其特征在于,重新寫入該數(shù)據(jù)是借由壞道重映像功能實現(xiàn)。
8.如權利要求7所述的數(shù)據(jù)保護方法,其特征在于,該壞道重映像功能是由該存儲單元提供。
9.如權利要求1或2或3所述的數(shù)據(jù)保護方法,其特征在于,該數(shù)據(jù)存儲系統(tǒng)是磁盤系統(tǒng)。
10.如權利要求1所述的數(shù)據(jù)保護方法,其特征在于,該存儲單元是磁盤驅動器。
11.如權利要求1所述的數(shù)據(jù)保護方法,其特征在于,該存儲區(qū)塊是該磁盤驅動器的磁道。
12.如權利要求1所述的數(shù)據(jù)保護方法,其特征在于,該數(shù)據(jù)若無法重新寫入該存儲單元其它非損壞的存儲區(qū)塊,則代表該存儲單元已無可寫入的存儲區(qū)塊,該數(shù)據(jù)存儲系統(tǒng)即輸出信息告知該使用者該存儲單元已無法使用,并為使用者恢復該數(shù)據(jù)。
13.如權利要求1所述的數(shù)據(jù)保護方法,其特征在于,該數(shù)據(jù)若無法重新寫入該存儲單元其它非損壞的存儲區(qū)塊,則代表該數(shù)據(jù)存儲系統(tǒng)的重新寫入功能無法使用,該數(shù)據(jù)存儲系統(tǒng)即輸出信息告知該使用者該重新寫入功能無法使用,并為使用者恢復該數(shù)據(jù)。
14.如權利要求13所述的數(shù)據(jù)保護方法,其特征在于,該重新寫入功能是壞道重映像功能。
15.如權利要求14所述的數(shù)據(jù)保護方法,其特征在于,該壞道重映像功能是由該存儲單元提供。
16.一種數(shù)據(jù)保護方法,應用在采用磁盤陣列的磁盤系統(tǒng),在該磁盤系統(tǒng)內的多個磁盤驅動器中儲存的數(shù)據(jù)不會因互相對應的兩個磁盤驅動器磁道損壞造成數(shù)據(jù)的損毀,其特征在于,該方法包括(1)判斷在磁盤陣列的狀態(tài)下讀取一磁盤驅動器的數(shù)據(jù)是否產(chǎn)生錯誤,若是,則進到步驟(2),若否,則進到步驟(5);(2)利用磁盤陣列重建該數(shù)據(jù);(3)將該數(shù)據(jù)寫入該磁盤驅動器并判斷是否無法寫入,若是,則進到步驟(4),若否,則進到步驟(5);(4)告知該使用者該數(shù)據(jù)無法寫入;以及(5)為使用者恢復該數(shù)據(jù)。
17.如權利要求16所述的數(shù)據(jù)保護方法,其特征在于,該磁盤陣列是獨立磁盤冗余陣列。
18.如權利要求17所述的數(shù)據(jù)保護方法,其特征在于,該獨立磁盤冗余陣列是第1級獨立磁盤冗余陣列或第5級獨立磁盤冗余陣列。
19.如權利要求16所述的數(shù)據(jù)保護方法,其特征在于,寫入該數(shù)據(jù)是借由壞道重映像功能實現(xiàn)。
20.如權利要求19所述的數(shù)據(jù)保護方法,其特征在于,該壞道重映像功能是由該磁盤驅動器提供。
21.如權利要求16所述的數(shù)據(jù)保護方法,其特征在于,該數(shù)據(jù)是寫入該磁盤驅動器其它非損壞的磁道。
22.如權利要求21所述的數(shù)據(jù)保護方法,其特征在于,該數(shù)據(jù)若無法重新寫入該磁盤驅動器其它非損壞的磁道,則代表該該磁盤驅動器已無可寫入的磁道,該磁盤系統(tǒng)即輸出信息告知該使用者該數(shù)據(jù)無法寫入的原因是該磁盤驅動器已無法使用。
23.如權利要求21所述的數(shù)據(jù)保護方法,其特征在于,該數(shù)據(jù)若無法重新寫入該磁盤驅動器其它非損壞的磁道,則代表該磁盤系統(tǒng)的重新寫入功能無法使用,該磁盤系統(tǒng)即輸出信息告知該使用者該數(shù)據(jù)無法寫入的原因是該重新寫入功能無法使用。
24.如權利要求23所述的數(shù)據(jù)保護方法,其特征在于,該重新寫入功能是壞道重映像功能。
25.如權利要求24所述的數(shù)據(jù)保護方法,其特征在于,該壞道重映像功能是由該磁盤驅動器提供。
全文摘要
一種數(shù)據(jù)保護方法,應用在數(shù)據(jù)存儲系統(tǒng),在該數(shù)據(jù)存儲系統(tǒng)內的多個存儲單元中儲存的數(shù)據(jù)不會因互相對應的兩個存儲單元存儲區(qū)塊損壞造成數(shù)據(jù)的損毀,該方法包括在讀取存儲單元數(shù)據(jù)失敗時,重新建立該數(shù)據(jù)且重新將該數(shù)據(jù)寫入該存儲單元其它非損壞的存儲區(qū)塊,并為使用者恢復該數(shù)據(jù);因此,本發(fā)明是在兩個相互對應的存儲單元存儲區(qū)塊損壞時,借由重新建立以及重新寫入數(shù)據(jù)的方式,不僅能讓使用者順利讀取數(shù)據(jù),而且可實現(xiàn)數(shù)據(jù)保護的目的。
文檔編號G11B20/10GK1866226SQ200510070909
公開日2006年11月22日 申請日期2005年5月17日 優(yōu)先權日2005年5月17日
發(fā)明者陳志偉 申請人:英業(yè)達股份有限公司