首頁 > 軟體

RAID 獨立磁碟冗餘陣列 - redundant array of independent disks

2020-06-16 16:33:22

RAID:

RAID全稱是獨立磁碟冗餘陣列(Redundant Array of Independent Disks),基本思想是把多個磁碟組合起來,組合一個磁碟陣列組,使得效能大幅提高。

RAID分為幾個不同的等級,各個不同的等級均在資料可靠性及讀寫效能做了不同的權衡。實際工作中根據自己的業務需求選擇不同的RAID方案。

RAID 的實現方式:

  •  外接式磁碟陣列:通過擴充套件卡提供適配能力;
  • 內接式RAID:主機板整合RAID控制器安裝OS前,在BIOS中設定;
  • 軟體RAID: 通過OS來實現;

RAID的種類:

raid0:RAID0稱為條帶化儲存,將資料分段儲存在各個磁碟中,讀寫均可以並行處理,因此讀寫速率為單個磁碟的N倍,沒有冗餘功能,任何一個磁碟的損壞就會導致的資料不可用。

 

raid1:RADI1是映象儲存,沒有資料校驗,資料被同等的寫入到2個或者多個磁碟中,寫入速度相對慢, 但是讀取速度比較快。

raid4:RADI4在RAID1的基礎上,N個盤用於資料儲存,另外加入了1個磁碟作為校驗盤。一共N+1個盤,任何一個盤壞掉也不影響資料的存取。

raid5:RAID5在RAID4的基礎上,由原來的一個盤來儲存校驗資料,改為每個盤都有資料和校驗資訊的。

 

帶有分散校驗的資料條帶;

raid01:先組成RAID0,然後組成RAID1.

 

raid10:先組成RAID1,然後組成RAID0 

raid2:RAID2 稱為糾錯海明碼磁碟陣列,其設計思想是利用海明碼實現資料校驗冗餘。海明碼是一種在原始資料中加入若干校驗碼來進行錯誤檢測和糾正的編碼技術,其中第 2n 位( 1, 2, 4, 8, … )是校驗碼,其他位置是資料碼。因此在 RAID2 中,資料按位元儲存,每塊磁碟儲存一位資料編碼,磁碟數量取決於所設定的資料儲存寬度,可由使用者設定。圖 4 所示的為資料寬度為 4 的 RAID2 ,它需要 4 塊資料磁碟和 3 塊校驗磁碟。如果是 64 位資料寬度,則需要 64 塊 資料磁碟和 7 塊校驗磁碟。可見, RAID2 的資料寬度越大,儲存空間利用率越高,但同時需要的磁碟數量也越多。海明碼自身具備糾錯能力,因此 RAID2 可以在資料發生錯誤的情況下對糾正錯誤,保證資料的安全性。它的資料傳輸效能相當高,設計複雜性要低於後面介紹的 RAID3 、 RAID4 和 RAID5 。但是,海明碼的資料冗餘開銷太大,而且 RAID2 的資料輸出效能受陣列中最慢磁碟驅動器的限制。再者,海明碼是按位元運算, RAID2 資料重建非常耗時。由於這些顯著的缺陷,再加上大部分磁碟驅動器本身都具備了糾錯功能,因此 RAID2 在實際中很少應用,沒有形成商業產品,目前主流儲存磁碟陣列均不提供 RAID2 支援。

帶有專用位校驗的資料條帶;

raid4:RAID4 與 RAID3 的原理大致相同,區別在於條帶化的方式不同。 RAID4 (圖 6 )按照 塊的方式來組織資料,寫操作只涉及當前資料盤和校驗盤兩個盤,多個 I/O 請求可以同時得到處理,提高了系統效能。 RAID4 按塊儲存可以保證單塊的完整性,可以避免受到其他磁碟上同條帶產生的不利影響。

RAID4 在不同磁碟上的同級資料塊同樣使用 XOR 校驗,結果儲存在校驗盤中。寫入資料時, RAID4 按這種方式把各磁碟上的同級資料的校驗值寫入校驗 盤,讀取時進行即時校驗。因此,當某塊磁碟的資料塊損壞, RAID4 可以通過校驗值以及其他磁碟上的同級資料塊進行資料重建。

RAID4 提供了 非常好的讀效能,但單一的校驗盤往往成為系統效能的瓶頸。對於寫操作, RAID4 只能一個磁碟一個磁碟地寫,並且還要寫入校驗資料,因此寫效能比較差。而且隨著成員磁碟數量的增加,校驗盤的系統瓶頸將更加突出。正是如上這些限制和不足, RAID4 在實際應用中很少見,主流儲存產品也很少使用 RAID4 保護。

帶有專用塊級校驗的資料條帶;

raid6:前面所述的各個 RAID 等級都只能保護因單個磁碟失效而造成的資料丟失。如果兩個磁碟同時發生故障,資料將無法恢復。 RAID6 (如圖 8 )引入雙重校驗的概念,它可以保護陣列中同時出現兩個磁碟失效時,陣列仍能夠繼續工作,不會發生資料丟失。 RAID6 等級是在 RAID5 的基礎上為了進一步增強資料保護而設計的一種 RAID 方式,它可以看作是一種擴充套件的 RAID5 等級。

RAID6 不僅要支援資料的恢復,還要支援校驗資料的恢復,因此實現代價很高,控制器的設計也比其他等級更複雜、更昂貴。 RAID6 思想最常見的實現方式是採用兩個獨立的校驗演算法,假設稱為 P 和 Q ,校驗資料可以分別儲存在兩個不同的校驗盤上,或者分散儲存在所有成員磁碟中。當兩個磁碟同時失效時,即可通過求解兩元方程來重建兩個磁碟上的資料。

RAID6 具有快速的讀取效能、更高的容錯能力。但是,它的成本要高於 RAID5 許多,寫效能也較差,並有設計和實施非常複雜。因此, RAID6 很少得到實際應用,主要用於對資料安全等級要求非常高的場合。它一般是替代 RAID10 方案的經濟性選擇。

帶有雙重分散校驗的資料條帶


IT145.com E-mail:sddin#qq.com