羅海珍
[摘要]磁盤陣列是目前先進的存儲技術,具有存取速度快、存儲安全、可靠性高、操作簡便等優點。通過分析磁盤陣列的技術和等級,在Windows NTServer4.0中,利用RAID技術能夠參閱較為完善的數據窖錯機制。因此,對存在于Windows NTServer 4,0中較為重要的就可以利用RAID技術進行數據容錯保護,從而達到保護數據的目的。
[關鍵詞]Windows NT RAID技術容錯數據模式
中圖分類號:TP7文獻標識碼:A文章編號:1671—7597(2009)1020146--01
計算機技術的發展,已使的CPU的速度進入GHz時代。隨著計算機應用的深入,各行各業對計算機系統的依賴程度也日漸增加,一旦發生故障(如掉電或硬件損壞),輕則部門工作癱瘓。重則企業生產完全中斷,無法辦公。敲各單位必須保證其計算機系統的高度可靠性。因此,各種容錯方案應運而生。Windows NT可通過應用“RAID”技術來實現數據的容錯,以保護數據,實現數據的完全恢復。
RAID是英文Redundant Array 0f Independent Disks的縮寫,翻譯成中文即為獨立磁盤冗余陣列,或簡稱磁盤陣列。簡單的說,RAID是一種把多塊獨立的硬盤(物理硬盤)按不同方式組合起來形成一個硬盤組(邏輯硬盤),從而提供比單個硬盤更高的存儲性能和提供數據冗余的技術。這種方式可以在一張或多張磁盤失效的情況下防止數據丟失,通過數據冗余提高數據的安全性,從而達到對數據進行保護的目的。它可分成6個級別,即從0級到5級,每一個級別具有不同的性能、可靠性及實現方式。“RAID”技術是通過數據冗余實現容錯的。數據冗余。即寫數據時,不只是把數據寫到一個磁盤上,而是寫到多個磁盤上。以防某個磁盤出錯導致數據丟失。
一、“RAID”技術的6個級別
0級:數據分條分布于多張磁盤。這個級別沒有提供冗余,但傳輸數據的速度最快,適合于處理大文件。缺點是如果陣列中的一個驅動器出現故障,整個系統也將癱瘓。
1級:使用磁盤鏡像提供最可能的冗余容錯。每次寫或更換數據時,同樣的操作也發生在另一張磁盤上,一旦這張磁盤失效。另一張盤將接手工作。但鏡像是不實際的和十分昂貴的,即使磁盤的成本下降,1級系統也只能對緊要任務的數據存儲有意義。
2級:將數據交叉分布于多張磁盤上,并用Hamming~產生奇偶信息,Hamming碼負責監測錯誤及其位置。此級別系統現以不再使用。
3級和4級:將數據分布于多張磁盤,并將奇偶信息寫在一張專用盤上。3級系統是按字節分布數據的。而4級系統則按塊分布數據。如果磁盤失效,冗余將會丟失,但磁盤數據仍可以完好無損。這兩級系統最適合大量高速傳輸數據,奇偶信息是在寫數據過程中被計算出來的。
5級:將數據和奇偶信息分布在陣列中的全部磁盤上,從而避免了專用奇偶盤的需要。5級系統的讀寫操作可同時進行,并使用Exclusive算法計算奇偶信息。這種算法最適合小型數據傳輸和處理,如電子郵件、文字處理、電子表格和數據庫應用等。
二、“RAID”技術的窖錯實現方式
“RAID”技術的容錯可以通過軟件或硬件方式實現,Windows NT支持“RAID”的三種軟件實現方式,HPRAIDO、RAIDI~RAID5。
Windows N下中RAIDO的段集(Stripe Set)是把許多磁盤上未格式化的自由空間組成一個大的邏輯盤,然后把數據同時分布到所有的磁盤上,在Windows NT中RAIDO是把要寫入磁盤的數據分成大小相等的64K數據塊,并按同樣的順序均勻地寫入磁盤陣列中的每一個磁盤中,在Windows NT中實現RAID技術至少需要2個物理磁盤,而最多能支持32個,段集能由不同類型的磁盤組成,如SCSI、ESDIP~IDE等等。RAIDO能提高系統對數據的讀寫能力,但其缺點就是沒有數據冗余,若段集中某個分區出錯,則整個段集中的數據將全部丟失,因此,實際應用過程中這種方式一般不被采用。
Windows NT中實現鏡像(RAIDI)是使用Ft—disk>sys實現把相同的數據寫入2個不同的物理磁盤上,因此,它至少需要2個磁盤。所以,其磁盤空間的利用率只有50%,相對其它“MID”方法,RAIDI代價較大,利用率低。在實現RAIDI的方法中,有兩種形式可供選擇:磁盤鏡像和磁盤雙工。磁盤鏡像是組成鏡像組的各個磁盤位于同一的磁盤控制器上,這種形式缺點是一旦磁盤控制器損壞,則鏡像組的2個磁盤都無法使用。磁盤雙工是組成鏡像組的各個磁盤位于不同的磁盤控制器上,這樣,若其中一個磁盤控制器出錯,該鏡像組上的數據仍能繼續使用。因此,這種形式不但能保護磁盤的出錯,還能保護控制器的出錯,是一種較為理想的鏡像方式。
Windows NT支持RAID5是把數據及奇偶校驗位同時寫入段集中,奇偶校驗是校驗數據完整性的機制,其容錯原理就是通過把奇偶校驗信息寫入到每一個磁盤的分區中以實現容錯的,它至少需要3個磁盤,在WindowsNT中,最多可以支持32個磁盤。Windows NT中的RAID5把奇偶校驗信息分寫入磁盤陣列中的每一個磁盤中,若其中有一個磁盤出錯,由于奇偶校驗信息分布在各個磁盤中,數據能夠利用剩余的信息重建。因此,數據不會由于其中某一磁盤的出錯而丟失。與RAIDI相比,其優勢是較便宜,利用率高,如同樣使用4個磁盤,RAIDI的利用率僅為50%,而RAID5則可達75%,并且隨著磁盤數據的增加而提高,RAID5的缺點就是不能在引導或系統分區實現其容錯機制。
在Windows NT Server 4,0中,“RAID”技術的具體應用可通過DiskAdministrator中的Fault Tolerance予項來實現,考慮到RAIDI和RAID5各有不同的特點,我們在實際應用中,可充分發揮兩種方法的優點,綜合應用“RAID”技術。用利用率較低的RAIDI實現引導和系統分區冗余,克服RAID5不能在該類分區實現冗余的缺點,而利用RAID5利用率高,較便宜的特點,對其余的數據完成窖錯的任務。
在對引導和系統分區實行鏡像容錯的時候,有一項很重要的工作要同時進行,這就是要創建一張容錯引導軟盤,以各引導分區所在物理磁盤出錯時用于引導系統。下面是創建引導軟磁盤的步驟:
1、在運行Windows NT操作系統的計算機上格式化軟磁盤,這一點很重要。因為在不是Windows NT的機器上格式化磁盤,無法正確引導系統進入Windows NT環境。
2、把Ntidr、ntderect、com、Ntbootdd。sys和qBoot,ini從硬盤中拷入引導軟盤中。
3、修改Boot,ini,使它指向引導分區的鏡像磁盤,使系統能從軟磁盤中引導Windows NT。