RAID是指獨立磁片的冗餘陣列。它是一種用於連接多個輔助存儲設備以提高性能,數據冗餘或兩者兼備的技術。它能夠承受一個或多個驅動器(磁片)故障,具體取決於所使用的RAID級別。
它由一系列磁片組成,其中連接多個磁片以實現不同的目標。
RAID技術
RAID技術有7
個級別的RAID方案。 這些模式為:RAID 0
,RAID 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簡介