DBMS獨立磁碟的冗餘陣列(RAID)


RAID是指獨立磁碟的冗餘陣列。它是一種用於連線多個輔助儲存裝置以提高效能,資料冗餘或兩者兼備的技術。它能夠承受一個或多個驅動器(磁碟)故障,具體取決於所使用的RAID級別。

它由一系列磁碟組成,其中連線多個磁碟以實現不同的目標。

RAID技術

RAID技術有7個級別的RAID方案。 這些模式為:RAID 0RAID 1....RAID 6

這些級別包含以下特徵:

  • 它包含一組物理磁碟驅動器。
  • 在此技術中,作業系統將這些單獨的磁碟視為單個邏輯磁碟。
  • 在該技術中,資料分布在陣列的物理驅動器上。
  • 冗餘磁碟容量用於儲存奇偶校驗資訊。
  • 在磁碟發生故障的情況下,可以幫助奇偶校驗資訊恢復資料。

標準RAID級別

1. RAID 0

RAID級別0提供資料剝離,即資料可以跨多個磁碟放置。它是基於剝離意味著如果一個磁碟發生故障,那麼陣列中的所有資料都將丟失。
此級別不提供容錯,但會提高系統效能。
範例:

Disk 0 Disk 1 Disk 2 Disk 3
20 21 22 23
24 25 26 27
28 29 30 31
32 33 34 35

在上圖中,沒有重複資料。 因此,一旦丟失的塊無法恢復。

RAID 0的優點:

  • 在此級別中,吞吐量會增加,因為多個資料請求可能不在同一磁碟上。
  • 此級別充分利用磁碟空間並提供高效能。
  • 它至少需要2個驅動器。

RAID 0的缺點:

  • 它不包含任何錯誤檢測機制。
    RAID 0 不是真正的RAID,因為它不是容錯的。
    在此級別中,任一磁碟發生故障都會導致相應陣列中的資料完全丟失。

2. RAID 1

此級別稱為資料映象,因為它將資料從驅動器1複製到驅動器2。它在發生故障時提供100%冗餘。

範例:

Disk 0 Disk 1 Disk 2 Disk 3
A A B B
C C D D
E E F F
G G H H

只有驅動器的一半空間用於儲存資料。驅動器的另一半空間是已儲存資料的映象。

RAID 1的優點:

  • RAID 1的主要優點是容錯。 在此級別中,如果一個磁碟發生故障,則另一個磁碟會自動接管。
  • 在此級別中,即使任何一個驅動器發生故障,陣列也將起作用。

RAID 1的缺點:

  • 在此級別中,每個驅動器需要一個額外的驅動器用於映象,因此費用更高。

3. RAID 2

  • RAID 2由使用漢明碼奇偶校驗的位級條帶化組成。 在此級別中,單詞中的每個資料位都記錄在單獨的磁碟上,資料字的ECC程式碼儲存在不同的設定磁碟上。
  • 由於其高成本和複雜結構,該水平尚未商業化使用。 RAID 3可以以較低的成本實現相同的效能。

RAID 2的優點:

  • 此級別使用一個指定的驅動器來儲存奇偶校驗
  • 它使用漢明碼進行錯誤檢測。

RAID 2的缺點:

  • 它需要額外的驅動器來進行錯誤檢測。

4. RAID 3

  • RAID 3由具有專用奇偶校驗的位元組級條帶化組成。 在此級別中,為每個磁碟部分儲存奇偶校驗資訊並將其寫入專用奇偶校驗驅動器。
  • 在驅動器發生故障的情況下,存取奇偶校驗驅動器,並從其餘裝置重建資料。 更換故障驅動器後,可以在新驅動器上恢復丟失的資料。
  • 在此級別,資料可以批次傳輸。 因此,高速資料傳輸是可能的。
Disk 0 Disk 1 Disk 2 Disk 3
A B C P(A, B, C)
D E F P(D, E, F)
G H I P(G, H, I)
J K L P(J, K, L)

RAID 3的優點:

  • 在此級別中,使用奇偶校驗驅動器重新生成資料。
  • 它包含高資料傳輸速率。
  • 在此級別中,並行存取資料。

RAID 3的缺點:

  • 它需要一個額外的平價驅動器。
  • 它為小型檔案的操作提供了緩慢的效能。

5. RAID 4

  • RAID 4包括使用奇偶校驗磁碟進行塊級剝離。 RAID 4採用基於奇偶校驗的方法,而不是複製資料。
  • 由於奇偶校驗的工作方式,此級別允許最多恢復1個磁碟故障。 在此級別中,如果多個磁碟發生故障,則無法恢復資料。
  • 級別3和級別4都需要至少三個磁碟才能實現RAID。
Disk 0 Disk 1 Disk 2 Disk 3
A B C P0
D E F P1
G H I P2
J K L P3

在此圖中,可以觀察到一個專用於奇偶校驗的磁碟。

在此級別中,可以使用XOR函式計算奇偶校驗。 如果資料位為0,0,0,1,那麼奇偶校驗位為XOR(0,1,0,0)= 1。如果奇偶校驗位為0,0,1,1,則奇偶校驗位為XOR(0,0,1,1)= 0。這意味著,偶數個數導致奇偶校驗0,奇數個數導致奇偶校驗1

C1 C2 C3 C4 Parity
0 1 0 0 1
0 0 1 1 0

假設在上圖中,C2由於某些磁碟故障而丟失。 然後使用所有其他列的值和奇偶校驗位,可以重新計算儲存在C2中的資料位。 此級別允許恢復丟失的資料。

6. RAID 5

  • RAID 5是對RAID 4系統的略微修改。唯一的區別是在RAID 5中,奇偶校驗在驅動器之間旋轉。
  • 它由帶有DISTRIBUTED奇偶校驗的塊級條帶化組成。
  • 與RAID 4相同,此級別允許最多恢復1個磁碟故障。 如果多個磁碟發生故障,則無法進行資料恢復。
Disk 0 Disk 1 Disk 2 Disk 3 Disk 4
0 1 2 3 P0
5 6 7 P1 4
10 11 P2 8 9
15 P3 12 13 14
P4 16 17 18 19

該表顯示了奇偶校驗位如何旋轉。引入此級別是為了使隨機寫入效能更好。

RAID 5的優點:

  • 該級別具有成本效益並且提供高效能。
  • 在此級別中,奇偶校驗分布在陣列中的磁碟上。
  • 它用於使隨機寫入效能更好。

RAID 5的缺點:

  • 在此級別中,磁碟故障恢復需要較長時間,因為必須從所有可用驅動器計算奇偶校驗。
  • 並行驅動器故障時,此級別無法生存。

7. RAID 6

  • 此級別是RAID 5的擴充套件。它包含具有2個奇偶校驗位的塊級剝離。
  • 在RAID 6中,可以承受2個並行磁碟故障。 假設使用的是RAID 5和RAID 1。當磁碟發生故障時,需要更換故障磁碟,如果同時另一個磁碟發生故障,那麼將無法恢復任何資料。因此在這種情況下,可以使用兩個並行磁碟故障中倖存的部分。
Disk 1 Disk 2 Disk 3 Disk 4
A0 B0 Q0 P0
A1 Q1 P1 D1
Q2 P2 C2 D2
P3 B3 C3 Q3

RAID 6的優點:

  • 此級別執行RAID 0以剝離資料,RAID 1執行映象。 在此級別中,在映象之前執行剝離。
  • 在此級別中,所需的驅動器應為2的倍數。

RAID 6的缺點:

  • 它沒有使用100%磁碟功能,因為一半用於映象。
  • 它包含的可伸縮性非常有限。