磁碟陣列(Disk Array)簡介


磁碟陣列(Disk Array)簡介

源起

  由於伺服器的大量運用,專業影音對大容量,高速儲存設備的需求,網路應用環境的普及,磁碟陣列系統遂成為近來中低階儲存設備的最佳選擇.

  目前市面上磁碟陣列系統的組成,幾乎都是依循 RAID Advisory Board 所定義的RAID 規格而製造.不同的 RAID level 有其不同的應用環境,不過大體而言,磁碟陣列系統是在提供大容量及高效能的儲存設備,同時可以提高資料的妥善性.

RAID

RAID Redundant Array of Inexpensive Drives 的縮寫. 1988, David A. Patterson , Randy H.Katz,Garth Gibson 等加大伯克萊分校的研究學者,發表了一篇文章: A Case for Redundant Arrays of Inexpensive Disks", 這篇文章, 產生了一個新的名詞 - R A I D,同時,定義了RAID的五種模式. RAID level 1-5.

  在發表當時,這些學者研究的目標,主要是在為系統尋找一個較便宜的解決方案-可以用較低容量而且較便宜的硬碟機,組合成大容量,較佳效率的磁碟機次系統,以取代昂貴的大容量硬碟,資料安全性在當時倒不是最重要的著眼點.

  在現在的使用環境中,磁碟機的價格快速滑落,效能也有明顯提昇.RAID的磁碟機系統,由於具備容錯能力,可以提高資料信賴性;整合各個磁碟機後,整體的效能也能提昇,遂成為中高階應用環境中的必要配備了

一般來說, RAID 磁碟陣列具備以下的優點:

· ¤ 集合數個硬碟機成為一個虛擬的大容量硬碟

· ¤ 將資料分成數個區段,同步的對數個磁碟機做讀/,增加磁碟存取時的速度. RAID 3/5 系統中, 磁碟機數目越多,儲存的速度愈快.

¤ 鏡射或同位元檢測模式能提供容錯功能.

RAID 模式的說明 (What are the RAID levels)?

RAID 模式

說明

最少硬碟組成數

組成容量(硬碟機數目N)

順序執行效能

亂數執行效能

RAID 0

條狀分布

2

N

R: 最好
W:
最好

R:
W:
最好

RAID 1

鏡射 Mirroring

2

N/2

R:
W:
中等

R: 中等
W:

RAID 3

獨立硬碟儲存同位元資料

3

N-1

R:
W:
中等

R: 中等
W:

RAID 5

同位元資料分布於組成硬碟中

3

N-1

R:
W:
中等

R: W:

       R 指讀取資料的速度
       
W
指謝入資料的速度
       
RAID Level 1
的硬碟機數量必須是2的倍數

RAID 在定義時,共設定了5個不同的組態,分為 Level 1-5,level 0Disk stripe,並不在當初的定義模式中,可能是為了描述方便起見,目前所見的文章,仍然將 Level 0 列為RAID的組態之中.

市面上的產品,大多支援RAID Level 0,1,3,5. Level 2,4 的產品較少見. 另外,level 10,30,50,則是兩種RAID level 的合成模式.

RAID 0 Disk Striping磁碟機條狀分布


RAID 0

最少硬碟機需求量

2

容量

N

容錯

No

  

RAID 0 提供最好的效能但是沒有容錯能力.存放在邏輯磁碟機內的資料是分布在數個實體磁碟機內.組成的硬碟機,其容量必須一致.如果不一致,將取最小的容量為依據.例如:3GB,4GB,4GB的組合,將會產生一個9GB的虛擬硬碟.

  資料先經過分割處理,才將各資料區段存入硬碟.如果有任一個硬碟機故障,全部的資料將無法讀出.此系統的安全性,隨著硬碟機數目增加而降低

  RAID 0 不是一個穩定的儲存媒體,所以不適合使用在對資料安全性要求很高的單位.

針對其優異的I/O表現,RAID 0適合在以下的環境中使用:

1. 要求資料快速傳送的影像撥放系統,資料從可靠度較高的媒體載入此硬碟系統中,以供其他裝置抓取資料

2. 儲存大型表格,或是其他唯讀形式的資料,使用者可以使用此資料.如果資料損毀,可以再從其他的儲存媒體中載入.

RAID 1Disk Mirroring(磁碟鏡射)

 

RAID 1

最少硬碟機需求量

2

容量

N/2

容錯

Yes

  

RAID 1 是將主要硬碟機內的資料全數複製到另一個硬碟上. RAID 1 只能夠在兩個硬碟機中執行.

  在做寫入動作時,由於需對兩顆硬碟機執行寫入指令,其資料傳輸量是一般的兩倍,所以會比單一硬碟機所耗用的時間多一些些,對某些需要做密集寫入動作的應用程式而言,有可能會有影響.而在讀取時,則可以提供較單一硬碟機接近兩倍的I/O效能.事實上, 它是容錯型式的磁碟陣列中, 效率最高的一種模式.

  RAID level 1 提供非常高的資料信賴度,磁碟系統中,一個硬碟故障時,另外一個硬碟可以完全的接替工作,而不會有任何錯誤發生.相對的,其成本也相對較高.磁碟機使用率只有50%.網路作業系統中,windows NT, Novell 都支援軟體mirror 功能,使用者可以很容易的設定.

RAID level 1 常應用於高安全要求的多人使用環境, 例如: 作業系統的開機磁碟..

目前大部分的RAID 控制卡中,都支援 RAID 10的功能.如果系統中存在4個硬碟,就可以選擇 RAID 10.

RAID (0+1)Disk Striping with Mirroring

RAID(0+1)

最少硬碟機需求量

4

容量

N/2

容錯

Yes

RAID (0+1) RAID 0 RAID 1 的結合, 磁碟鏡射加資料條狀交錯.最小的硬碟機組成數是四顆.

RAID (0+1) 可以容許邏輯磁碟機中不只一顆硬碟故障.因為其提供完整的容錯能力.

RAID 10 RAID level 1 一樣, 其硬碟使用率亦只有 50%, 但它卻是最具高效率的規劃方式.兼具 RAID 1"安全性"RAID0 "速度" .可是,成本也最高.


RAID 3具備獨立同位元檢測磁碟機的Disk Striping

RAID 3

最少硬碟機需求量

3

容量

N-1

容錯

YES

  

RAID 3 具備獨立的同位元檢測硬碟, 資料是分別散存在各資料碟內.當一個磁碟機故障時,控制卡可以從同位元資料取得資料,以恢復或重建遺失的資料. 單從少部份的資料碟, 無法取得完整資料.

  資料在從主機寫入磁碟陣列時,RAID控制卡會先將資料分成許多段(chunk),並產生同位元檢測資料,再同時寫入硬碟機組中.讀取時,控制卡將虛擬磁碟機的區塊位址轉換成相對的資料塊(Chunk)位址,再對磁碟陣列發出讀取指令,等資料全部讀取後,才回應系統.

  RAID 3 常用在繪圖, 影像處理, , 對資料進行大量讀或寫的應用領域,以及處理大量順序檔案的非互動式應用環境.為了使RAID 3的磁碟陣列更有效率,其每次I/O區塊,應該設定為32KB或更大.

RAID 5具備分布式同位元檢測資料的 Disk Striping

RAID 5

最少硬碟機需求量

3

容量

N-1

容錯

Yes

  

 

RAID 5 相當類似 RAID 3, 但是其同位元資料是分布在各個硬碟中. 通常亦為 "輪轉同位型陣列" Rotating Parity Array.

  在每次從系統寫入資料前, RAID控制卡內部的邏輯電路, 根據切割之區段大小 (單一或多個 block 為單位), 計算出同位檢核資訊. 每項資料中 ( Stripe 為單位) 的同位檢核資料, 隨著資料分別散存在各陣列硬碟內. 這種RAID的模式,可允許多個寫入(write overlay), 因為這多個寫入動作時, 同位資訊是置在不同的陣列硬碟中.

  但是在讀取資料時, 讀取的資料可能是資料, 但也可能是同位元資料, 必需經由RAID控制卡的計算才能整合. 在連續性大型檔案輸出時,是較不利的.因此,RAID 5並不適用於需要持續更新資料的應用環境.

  磁碟陣列中,如果有硬碟發生故障,控制卡可以從其他好的硬碟機中讀取資料以重建系統.

 


留言

此網誌的熱門文章

DISK RAID(磁碟陣列)介紹