1. 程式人生 > 其它 >RAID-獨立磁碟冗餘陣列

RAID-獨立磁碟冗餘陣列

目錄

獨立磁碟冗餘陣列(Redundant Array of Independent Disks, RAID),又被稱為磁碟陣列。利用虛擬化儲存技術把多個硬碟組合起來,成為一個或多個硬碟陣列組,目的為提升效能或資料冗餘,或是兩者同時提升。

簡單來說,RAID 把多個硬碟組合成為一個邏輯硬碟,因此,作業系統只會把它當作一個實體硬碟。RAID 常被用在伺服器電腦上,並且常使用完全相同的硬碟作為組合。

RAID 0

RAID 0 將兩個以上磁碟並聯起來,儲存資料時根據磁碟數量將資料分成 N 份,這些資料同時併發寫入 N 塊磁碟中。

在所有 RAID 級別中,因為 RAID 0 的讀寫都可以並行處理,所以速度是最快的。

但是 RAID 0 沒有冗餘能力和容錯能力,如果其中一個磁碟損壞,資料完整性被破壞,所有資料都會丟失。

RAID 1

RAID 1 將兩組以上的 N 個磁碟互作映象,儲存資料時除在主硬碟儲存,同時也在映象硬碟儲存同樣資料。

任何一塊磁碟的損壞都不會導致資料丟失,RAID 1 具有極高的資料安全可靠性,但無論用多少磁碟做 RAID 1,僅算一個磁碟的容量,磁碟利用率是最低的一個級別。

RAID 1 沒有校驗機制,如果兩個硬碟資料出現差異,會出現腦裂問題。

RAID 3

採用了 Bit-interleaving(資料交錯儲存) 技術,在資料寫入磁碟時,將資料分成 N-1 份,併發寫入 N-1 塊磁碟,並在第 N 塊磁碟記錄校驗資料。任何一塊磁碟損壞(包括校驗資料磁碟),都可以利用其他 N-1 塊磁碟來修復資料。

在資料修改較多的場景中,任何磁碟資料修改,都會導致第 N 塊磁碟重寫校驗資料。頻繁寫入導致第 N 塊磁碟比其他磁碟更容易損壞,需要頻繁更換,所以 RAID 3 很少在實踐中使用。

由於資料分散在不同磁碟上,因此就算讀取的資料量小也可能需要所有硬碟進行工作,所以此規格是和讀取大量資料時使用。

RAID 5

RAID 5 是一種儲存效能、資料安全和儲存成本兼顧的儲存解決方案,使用了 Disk Striping(硬碟分割) 技術。

RAID 5 使用 “奇偶校驗位”。RAID 5 和 RAID 3 很相似,但是校驗資料不是寫入第 N 塊磁碟,而是螺旋式地寫入所有磁碟中。這樣校驗資料修改也被平均到所有磁碟上,避免 RAID 3 頻繁寫壞一塊磁碟的情況。

RAID 6

與 RAID 5 相比,RAID 6 增加第二個獨立的奇偶校驗資訊塊。兩個獨立的奇偶系統使用不同演算法,資料可靠性非常高,任意兩塊磁碟同時失效時不會影響資料完整性。

同一陣列中最多容許兩個磁碟損壞。更換新磁碟後,資料將會重新算出並寫入新的磁碟中。

RAID 10/01

結合 RAID 0 和 RAID 1 兩種方案構成了 RAID 10/01。

RAID 10 是先分割資料然後映象,再將所有硬碟分為兩組。視為以 RAID 1 作為最低組合,然後將每組 RAID 1 視為一個 “硬碟” 組合為 RAID 0 運作。

RAID 01 與 RAID 10 程式相反,先映象再將資料到分割兩組硬碟。它將所有的硬碟分為兩組,每組各自構成為 RAID 0 作為最低組合,而將兩組硬碟組合為 RAID 1 運作。

當 RAID 10 有一個硬碟受損,其餘硬碟會繼續運作。RAID 01 只要有一個硬碟受損,同組 RAID 0 的所有硬碟都會停止運作,只剩下其他組硬碟運作,可靠性較低。如果以六個硬碟建 RAID 01,映象再用三個建 RAID 0,那麼壞一個硬碟便會有三個硬碟離線。因此,RAID 10 遠較 RAID 01 常用。

參考