◎磁碟陣列(Disk Array)模式的概念 f+_h !j qOih`dla "pP^*9FrA 由於伺服器(Server)的大量運用,專業影音對大容量、高速儲存設備的需求、網路應用環境的普及,磁碟陣列系統遂成為近來中低階儲存設備的最佳選擇。目前市面上磁碟陣列系統的組成,幾乎都是依循RAID Advisory Board所定義的RAID規格而製造。不同的RAID Level有其不同的應用環境,大體而言,磁碟陣列系統是在提供大容量及高效能的儲存設備,同時可以提高資料的妥善性。
pi<TFe@eG *37uy_EpV RAID是Redundant Array of Inexpensive Drives的縮寫。於1988年由David A. Patterson、Randy H.Katz及Garth Gibson等加大伯克萊分校的研究學者,發表了一篇文章:「A Case for Redundant Arrays of Inexpensive Disks」,然就由這篇文章產生了一個新的名詞-「RAID」,同時定義了RAID的五種模式─即RAID Level 1、2、3、4、5。
npJt3
Y_I /+Lfrt RAID在發表當時,這些學者研究的目標,主要是在為系統尋找一個較便宜的解決方案,即可以用較低容量且較便宜的硬碟機,組合成大容量,較佳效率的磁碟機次系統,以取代昂貴的大容量硬碟,而資料的安全性在當時倒不是最重要的著眼點。然在現在的使用環境中,磁碟機的價格快速滑落了,效能也有明顯提昇了。但RAID磁碟機系統,由於具備容錯能力,可以提高資料信賴性;經整合各個磁碟機後,整體的效能也能提昇,遂成為中、高階應用環境中的必要配備了,
一般說來RAID磁碟陣列具備以下的優點: 'u4<BQVV[
A.方便集合數個硬碟機成為一個虛擬的大容量硬碟。 &l3iV88
B.將資料分成數個區段,同步的對數個磁碟機做讀寫,增加磁碟存取時的速度。 rM'=_nmi
C.在RAID 3與5系統中,磁碟機數目越多,其儲存的速度愈快。 GGnpjwXeH
D.具有鏡射或同位元檢測模式,能提供容錯功能。 (M*FIX 目前RAID組態之中的Level 0(Disk Stripe),並不在當初的定義模式中,後可能是為了描述方便起見,目前所見的文章,仍將Level 0列為RAID的組態。在市面上的產品,大多也支援RAID Level 0、1、3、5,反而Level 2、4的產品是較少見的。另還有Level 10、30、50,這都是兩種RAID Level的合成模式。而大多的IDE RAID Card只能支援到Level 0、1與0+1三種方式,尤其是同主機板合併的ATA或SATA IDE之組合!
T6 '`l?H`; {q"OM*L( •RAID 0:Disk striping(磁碟條狀分布) XUz3*rfs 適合在以下的環境中使用;
V5UF3'3;} A.要求資料快速傳送的影像撥放系統,資料從可靠度較高的媒體載入此硬碟系統中,以供其他裝置抓取資料。
;7}VBkH B.儲存大型表格或是其他唯讀形式的資料,供使用者可以在此使用資料。
`$ 6rz C.雖無容錯如果資料損毀時,可以隨意再從其他的儲存媒體中載入。
E*]bgD7V 其「控制程序」,在做寫入動作時,同時對兩顆硬碟機執行「寫入」,資料傳輸量是一般的兩倍,所以會比單一硬碟機多耗用些時間,對某些很密集式的情境下或許有些會受影響。但在一般性「讀取」時,則可以提供較單一硬碟機接近兩倍的I/O(輸入與輸出)效能。事實上, 它是RAID工作程序中,效率是最高的一種模式而又簡單,
其對磁碟機個數的基本組合是二的倍數,在Windows NT系列作業平台和其它的作業系統都有直接的支援。
|y(Q vSEuk}pk •RAID 1:Disk mirroring(磁碟鏡像) Gefne[ 提供非常高的資料信賴度;
h2G$@8t}I 在該等磁碟組合系統「控制程序」中,一個硬碟故障時,另外一個硬碟可以完全的接替工作,而不會有任何錯誤發生。相對的,成本也就較高其磁碟機使用率只有50%,<font color=red>其基本組合也是二的倍數。</font>在網路作業系統中,如Windows NT作業平台和Novell server都支援軟體Mirror功能,使用者也可以很容易的設定。它常應用於高安全要求的多人使用環境中,例如─作業系統的開機磁碟。
OCe!.` (註:目前大部分的IDE或SCSI RAID Card,都支援RAID 10的功能;如果系統中存在四個硬碟,就可以作這一選擇,那容量就是與RAID 0相同了。)
4h|c<-`>t b,7k)ND1F [•RAID 0+1:Disk striping with mirroring(磁碟鏡像加條狀) H\ F:95 可以容許邏輯磁碟機中不只一顆硬碟故障;
~vm%6CABM 因為「控制程序」中提供完整的容錯能力,如同RAID Level 1一樣,其硬碟使用率亦只有50%,但它卻是最具高效率的規劃方式。兼具 RAID 1的「安全性」與RAID 0的「速度」,可是成本也最高的,
其基本組合必須是四的倍數。 ^aItoJq NG+GEqx •RAID 3:獨立式同位元的檢測資料之Disk striping 'j#*6xD 更適用於對資料進行大量讀或寫的應用領域,以及處理大量順序檔案的非互動式應用環境;
?WGA?J %2 常用在繪圖、影像處理等,為了使RAID 3的磁碟陣列更有效率,其「控制程序」每個I/O區塊,要設定為32KByte以上,<font color=red>其最小磁碟機的組合是三的倍數。</font>資料在從主機寫入磁碟陣列時,「控制程序」會先將資料分成許多段(Chunk),並產生同位元檢測資料,再同時寫入硬碟機組中。讀取時,「控制程序」將虛擬磁碟機的區塊位址轉換成相對的資料塊(Chunk)位址,再對磁碟陣列發出讀取指令,等資料全部讀取後才回應系統。
!|S(Ms ha]VWt%} •RAID 5:分布式同位元的檢測資料之Disk striping 9}rS(/@
} 相當類似RAID 3,但是同位元資料是分布在各磁碟機中,所以亦稱Rotatinng parity arry(輸轉同位型陣例 );
Ytn9B}%o 它並不適用於持續更新資料的應用環境,因磁碟陣列中如果有硬碟發生故障,「控制程序」可以從其他好的硬碟機中讀取資料以重建系統。在每次從系統寫入資料前,由「控制程序」內部的邏輯運算中,根據切割之區段大小(單一或多個Block為單位),計算出同位檢核資訊。每項資料中(以 Stripe 為單位)的同位檢核資料,隨著資料分別散存在各陣列硬碟內。這種RAID的模式,可允許多個寫入覆疊(Write Overlay),因為這多個寫入動作時,同位資訊是置在不同的陣列硬碟中。但是在讀取資料時,讀取的資料可能是資料,但也可能是同位元資料,必需經「控制程序」的計算才能整合,故在連續性大型檔案輸出時是較不利的。因此RAID 5,並不適用於需要持續更新資料的應用環境,
其最小磁碟機的組合也是三的倍數。 3#LlDC_WC k
=>oO9` 註:以上的理論之「控制程序」─若以軟體達成的就是所謂的「soft RAID」,而將其「控制程序」作做成一專用電路者(如一個晶片)就稱「hard RAID」。 Xr,1&"B&t L^1NY3=$ Copyright by 小豬[ 此貼被小豬在2005-09-03 07:34重新編輯 ]