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%磁片功能,因為一半用於鏡像。
  • 它包含的可伸縮性非常有限。

上一篇: DBMS動態哈希 下一篇: DBMS SQL簡介