磁碟陣列 (DISK RAID)

 所謂 RAID 就是由數顆硬碟機組成一個容錯 (或非容錯) 陣列系統, 他可以提供磁碟機串接或並接, 將所有連接的硬碟機組成一個虛擬的大硬碟機。可將資料切割成許多區塊, 當讀取或寫入資料時以並行的方式對多顆硬碟同時進行存取動作, 當硬碟機顆數愈多時, 愈能增加存取速度。並且能夠提供硬碟機容錯功能, 可藉 Mirroring 或 Parity 的方式進行。

 一般而言, 磁碟陣列大多為 SCSI, 但現在也有許多 IDE 磁碟陣列, 價格比起 SCSI 磁碟陣列便宜許多, 如果存取量不是十分龐大, 也是不錯的選擇。

RAID 的好處

  1. 在不同應用環境下, 可提昇系統 I/O 之存取效能。
  2. 增加資料保存的安全性。
  3. 可以增加每個系統可連結硬碟機數量與容量。
  4. 經由磁碟陣列卡 RAID level 的設定控制, 可以得到不同運用需求的彈性選擇。

RAID的特徵

 由於現今 RAID 的技術愈來愈成熟, 產品在市場上也愈來愈多, 一些基本的功能就變成是一種標準, 不會因為廠牌不同而有所不同。這些特徵包括 :

  1. 提供相互備援、可熱抽換的冷卻風扇 (Hot Swappable Fan)。
  2. 提供相互備援、可熱抽換的電源供應器 (Hot Swappable Power)。
  3. 與主機、作業系統獨立 (Host Independent)。
  4. 支援熱抽換與熱備援用硬碟機並且線上自動資料重建 (Automatic Rebuilding)。
level
說明
讀取資料
寫入資料
備份功能
費用
RAID level 0
 這是被定義為非容錯的硬碟群組。而組構的多顆硬碟機, 被依一定的切割區段, 連貫成一顆大容量的陣列硬碟。容量大小等於全部硬碟機總和,它沒有同位檢核的位元, 所以無法救回因其中任一硬碟故障而毀損的整個資料。這是最有效率的一種陣列類別, 因為資料可以多個區段方式, 在同一時間, 將之分別存放在該群所有陣列硬碟裡。在讀取資料時, 亦可在同一時間, 由該群所有陣列硬碟送出資料至陣列控制器。換言之, 此種陣列類型的效率, 是與該群內陣列硬碟數成正比。 容易處理, 多個同時讀取。 容易處理, 多個同時寫入。 非常合理 (空間完全利用)
RAID level 1
 就是 "磁碟鏡像" Disk Mirroring。它可將兩顆硬碟機為一組, 在有資料欲寫入時, 在同一時間將之存放在系統的兩顆硬碟利用"鏡像對映" Mirrored Pair 直接同時寫入兩硬碟機,其內部資料是完全一樣的。而在讀取資料時, 則可自兩顆硬碟機同時讀出。這一型式的磁碟陣列, 不但不會降低寫入的速度, 更能提高讀取的效率。事實上,它是容錯型式的磁碟陣列中,效率最高的。 較快, 因為其中的任何一個硬碟都有資料。 較慢, 因為需要寫入多顆硬碟。 安全性最高 。 較高, 硬碟機使用率只有 50%。
RAID level 0+1 (10)
 這是一種 Dual Level RAID, 也有人稱之為 RAID level 10。這可不是 "十", 它是 "零加一", 亦即是兩組依一定的切割區段, 連貫成不同的兩顆大容量的陣列硬碟, 互相為 "鏡像"。在每次寫入資料, 磁碟陣列控制器會將資料同時寫入該兩組 "大容量陣列硬碟組" 內。同 RAID level 1 一樣, 雖然其硬碟使用率亦只有 50%, 但它卻是最具高效率的規劃方式。 較快, 因為其中的任何一個硬碟都有資料。 較慢, 因為需要寫入多顆硬碟。 安全性最高 。 較高, 硬碟機使用率只有 50%。
RAID level 3

 這種方式由陣列控制器內建的 XOR 邏輯, 根據切割之區段大小, 計算出同位檢核位元或位元組。這項功能, 提供了資料容錯效果。而這個區段的大小, 是以 bit 或 byte 為單位。每項資料中的同位檢核資料, 統一存放在一特定的同位碟 (Parity Disk)上。而資料則是分別散存在各資料碟 Data Disk 內。單從少部份的資料碟, 是無法取得完整原資料的。

正常速度(也就是說, 與一顆的速度一樣)。

較慢, 由於Parity的計算(包含讀與寫)。

很好。 合理, 硬碟機使用率為 n-1 顆。
RAID level 4

 跟上述的 level 3 大部份相同。不過其支援的區段大小相當多樣, 是以 block 為單位計算的。它可以是單一 block 為區段, 也有以多個 block 為區段大小。所以有些資料是可以從某資料碟中取得, 這促成一個較 RAID level 3 優勢的功能是: 允許 "重疊讀取" Overlapped Read Operation。
 但是在作寫入時, 因為需同時更新 "同位碟" 的資訊, 所以不具有 "重疊寫入" 的能力。換言之, 在同時間中多筆資料要求寫入時, 因為每筆資料之同位資訊需寫在同一顆 "同位碟" 中, 所以並不會有任何速度的優勢。

正常速度(也就是說, 與一顆的速度一樣)。 較慢, 由於Parity的計算(包含讀與寫)。 很好。 合理, 硬碟機使用率為 n-1 顆。
RAID level 5

 通常亦稱為 "輪轉同位型陣列" Rotating Parity Array。它和 RAID level 4 一樣的, 在每次的寫入前, 由陣列控制器內建的 XOR 邏輯, 根據切割之區段大小 (單一或多個block 為單位), 計算出同位檢核資訊。每項資料中 (以 Stripe 為單位) 的同位檢核資料, 隨著資料分別散存在各陣列硬碟內, 沒有特定同位碟。相較於上述 RAID level 4, 這個型式可允許多個寫入, 因為這多個寫入動作時, 同位資訊是置在不同的陣列硬碟中。
 但是在讀取資料時, 每項資料可能是直接來自各具該項資料的硬碟中, 但也可能是會讀入同位資訊, 而必需經由 XOR 的計算。在連續大型檔案要求輸出時, 它顯然稍有不利。

正常速度(也就是說, 與一顆的速度一樣)。 較慢, 由於Parity的計算(包含讀與寫)。 很好。 合理, 硬碟機使用率為 n-1 顆 (同 RAID 3)。