磁盤陣列(RAID) 級別

一、RAID 0html

RAID 0是最先出現的RAID模式,即Data Stripping數據分條技術。RAID 0是組建磁盤陣列中最簡單的一種形式,只須要2塊以上的硬盤便可,成本低,能夠提升整個磁盤的性能和吞吐量。RAID 0沒有提供冗餘或錯誤修復能力,但實現成本是最低的。數據庫

RAID 0示意圖

RAID 0示意圖緩存

RAID 0最簡單的實現方式就是把N塊一樣的硬盤用硬件的形式經過智能磁盤控制器或用操做系統中的磁盤驅動程序以軟件的方式串聯在一塊兒建立一個大的卷集。在使用中電腦數據依次寫入到各塊硬盤中,它的最大優勢就是能夠整倍的提升硬盤的容量。如使用了三塊80GB的硬盤組建成RAID 0模式,那麼磁盤容量就會是240GB。其速度方面,各單獨一塊硬盤的速度徹底相同。最大的缺點在於任何一塊硬盤出現故障,整個系統將會受到破壞,可靠性僅爲單獨一塊硬盤的1/N。安全

爲了解決這一問題,便出現了RAID 0的另外一種模式。即在N塊硬盤上選擇合理的帶區來建立帶區集。其原理就是將原先順序寫入的數據被分散到全部的四塊硬盤中同時進行讀寫。四塊硬盤的並行操做使同一時間內磁盤讀寫的速度提高了4倍。分佈式

在建立帶區集時,合理的選擇帶區的大小很是重要。若是帶區過大,可能一塊磁盤上的帶區空間就能夠知足大部分的I/O操做,使數據的讀寫仍然只侷限在少數的1、兩塊硬盤上,不能充分的發揮出並行操做的優點。另外一方面,若是帶區太小,任何I/O指令均可能引起大量的讀寫操做,佔用過多的控制器總線帶寬。所以,在建立帶區集時,咱們應當根據實際應用的須要,慎重的選擇帶區的大小。性能

帶區集雖然能夠把數據均勻的分配到全部的磁盤上進行讀寫。但若是咱們把全部的硬盤都鏈接到一個控制器上的話,可能會帶來潛在的危害。這是由於當咱們頻繁進行讀寫操做時,很容易使控制器或總線的負荷 超載。爲了不出現上述問題,建議用戶可使用多個磁盤控制器。最好解決方法仍是爲每一塊硬盤都配備一個專門的磁盤控制器。優化

雖然RAID 0能夠提供更多的空間和更好的性能,可是整個系統是很是不可靠的,若是出現故障,沒法進行任何補救。因此,RAID 0通常只是在那些對數據安全性要求不高的狀況下才被人們使用。[1] 動畫

二、RAID 1編碼

RAspa

RAID 1示意圖

RAID 1示意圖

ID 1稱爲磁盤鏡像,原理是把一個磁盤的數據鏡像到另外一個磁盤上,也就是說數據在寫入一塊磁盤的同時,會在另外一塊閒置的磁盤上生成鏡像文件,在不影響性能狀況下最大限度的保證系統的可靠性和可修復性上,只要系統中任何一對鏡像盤中至少有一塊磁盤可使用,甚至能夠在一半數量的硬盤出現問題時系統均可以正常運行,當一塊硬盤失效時,系統會忽略該硬盤,轉而使用剩餘的鏡像盤讀寫數據,具有很好的磁盤冗餘能力。雖然這樣對數據來說絕對安全,可是成本也會明顯增長,磁盤利用率爲50%,以四塊80GB容量的硬盤來說,可利用的磁盤空間僅爲160GB。另外,出現硬盤故障的RAID系統再也不可靠,應當及時的更換損壞的硬盤,不然剩餘的鏡像盤也出現問題,那麼整個系統就會崩潰。更換新盤後原有數據會須要很長時間同步鏡像,外界對數據的訪問不會受到影響,只是這時整個系統的性能有所降低。所以,RAID 1多用在保存關鍵性的重要數據的場合。

RAID 1主要是經過二次讀寫實現磁盤鏡像,因此磁盤控制器的負載也至關大,尤爲是在須要頻繁寫入數據的環境中。爲了不出現性能瓶頸,使用多個磁盤控制器就顯得頗有必要。

三、RAID0+1

從RA

RAID0+1示意圖

RAID0+1示意圖

ID 0+1名稱上咱們即可以看出是RAID0與RAID1的結合體。在咱們單獨使用RAID 1也會出現相似單獨使用RAID 0那樣的問題,即在同一時間內只能向一塊磁盤寫入數據,不能充分利用全部的資源。爲了解決這一問題,咱們能夠在磁盤鏡像中創建帶區集。由於這種配置方式綜合了帶區集和鏡像的優點,因此被稱爲RAID 0+1。把RAID0和RAID1技術結合起來,數據除分佈在多個盤上外,每一個盤都有其物理鏡像盤,提供全冗餘能力,容許一個如下磁盤故障,而不影響數據可用性,並具備快速讀/寫能力。RAID0+1要在磁盤鏡像中創建帶區集至少4個硬盤。

四、RAID: LSI MegaRAID、Nytro和Syncro

MegaRAID、Nytro和Syncro都是LSI 針對RAID而推出的解決方案,而且一直在創造更新。

LSI MegaRAID的主要定位是保護數據,經過高性能、高可靠的RAID控制器功能,爲數據提供高級別的保護。LSI MegaRAID在業界有口皆碑。

LSI Nytro的主要定位是數據加速,它充分利用當今備受追捧的閃存技術,極大地提升數據I/O速度。LSI Nytro包括三個系列:LSI Nytro WarpDrive加速卡、LSI Nytro XD 應用加速存儲解決方案和LSI Nytro MegaRAID 應用加速卡。Nytro MegaRAID主要用於DAS環境,Nytro WarpDrive加速卡主要用於SAN和NAS環境,Nytro XD解決方案由Nytro WarpDrive加速卡和Nytro XD 智能高速緩存軟件兩部分構成。

LSI Syncro的定位主要用於數據共享,提升系統的可用性、可擴展性,下降成本。

LSI經過MegaRAID提供基本的可靠性保障;經過Nytro實現加速;經過Syncro突破容量瓶頸,讓價格低廉的存儲解決方案能夠大規模擴展,而且進一步提升可靠性。

五、RAID2:帶海明碼校驗
  從概念上講,RAID 2 同RAID 3相似, 二者都是將數據條塊化分佈於不一樣的硬盤上, 條塊單位爲位或字節。然而RAID 2 使用必定的編碼技術來提供錯誤檢查及恢復。這種編碼技術須要多個磁盤存放檢查及恢復信息,使得RAID 2技術實施更復雜。所以,在商業環境中不多使用。下圖左邊的各個磁盤上是數據的各個位,由一個數據不一樣的位運算獲得的海明校驗碼能夠保存另外一組磁盤上。因爲海明碼的特色,它能夠在數據發生錯誤的狀況下將錯誤校訂,以保證輸出的正確。它的數據傳送速率至關高,若是但願達到比較理想的速度,那最好提升保存校驗碼ECC碼的硬盤,對於控制器的設計來講,它又比RAID3,4或5要簡單。沒有免費的午飯,這裏也同樣,要利用海明碼,必需要付出數據冗餘的代價。輸出數據的速率與驅動器組中速度最慢的相等。
  6 、RAID3:帶奇偶校驗碼的並行傳送
  這種校驗碼與RAID2不一樣,只能查錯不能糾錯。它訪問數據時一次處理一個帶區,這樣能夠提升讀取和寫入速度。校驗碼在寫入數據時產生並保存在另外一個磁盤上。須要實現時用戶必需要有三個以上的驅動器,寫入速率與讀出速率都很高,由於校驗位比較少,所以計算時間相對而言比較少。用軟件實現RAID控制將是十分困難的,控制器的實現也不是很容易。它主要用於圖形(包括動畫)等要求吞吐率比較高的場合。不一樣於RAID 2,RAID 3使用單塊磁盤存放奇偶校驗信息。若是一塊磁盤失效,奇偶盤及其餘數據盤能夠從新產生數據。 若是奇偶盤失效,則不影響數據使用。RAID 3對於大量的連續數據可提供很好的傳輸率,但對於隨機數據,奇偶盤會成爲寫操做的瓶頸。
  七、RAID4:帶奇偶校驗碼的獨立磁盤結構
  RAID4和RAID3很象,不一樣的是,它對數據的訪問是按數據塊進行的,也就是按磁盤進行的,每次是一個盤。在圖上能夠這麼看,RAID3是一次一橫條,而RAID4一次一豎條。它的特色和RAID3也挺象,不過在失敗恢復時,它的難度可要比RAID3大得多了,控制器的設計難度也要大許多,並且訪問數據的效率不怎麼好。
  八、RAID5:分佈式奇偶校驗的獨立磁盤結構
  從它的示意圖上能夠看到,它的奇偶校驗碼存在於全部磁盤上,其中的p0表明第0帶區的奇偶校驗值,其它的意思也相同。RAID5的讀出效率很高,寫入效率通常,塊式的集體訪問效率不錯。由於奇偶校驗碼在不一樣的磁盤上,因此提升了可靠性。可是它對數據傳輸的並行性解決很差,並且控制器的設計也至關困難。RAID 3 與RAID 5相比,重要的區別在於RAID 3每進行一次數據傳輸,需涉及到全部的陣列盤。而對於RAID 5來講,大部分數據傳輸只對一塊磁盤操做,可進行並行操做。在RAID 5中有「寫損失」,即每一次寫操做,將產生四個實際的讀/寫操做,其中兩次讀舊的數據及奇偶信息,兩次寫新的數據及奇偶信息。
  九、RAID6:帶有兩種分佈存儲的奇偶校驗碼的獨立磁盤結構
  名字很長,可是若是看到圖,你們馬上會明白是爲何,請注意p0表明第0帶區的奇偶校驗值,而pA表明數據塊A的奇偶校驗值。它是對RAID5的擴展,主要是用於要求數據絕對不能出錯的場合。固然了,因爲引入了第二種奇偶校驗值,因此須要N+2個磁盤,同時對控制器的設計變得十分複雜,寫入速度也很差,用於計算奇偶校驗值和驗證數據正確性所花費的時間比較多,形成了沒必要須的負載。我想除了軍隊沒有人用得起這種東西。
  十、RAID7:優化的高速數據傳送磁盤結構
  RAID7全部的I/O傳送均是同步進行的,能夠分別控制,這樣提升了系統的並行性,提升系統訪問數據的速度;每一個磁盤都帶有高速緩衝存儲器,實時操做系統可使用任何實時操做芯片,達到不一樣實時系統的須要。容許使用SNMP協議進行管理和監視,能夠對校驗區指定獨立的傳送信道以提升效率。能夠鏈接多臺主機,由於加入高速緩衝存儲器,當多用戶訪問系統時,訪問時間幾乎接近於0。因爲採用並行結構,所以數據訪問效率大大提升。須要注意的是它引入了一個高速緩衝存儲器,這有利有弊,由於一旦系統斷電,在高速緩衝存儲器內的數據就會所有丟失,所以須要和UPS一塊兒工做。固然了,這麼快的東西,價格也很是昂貴。
  十一、RAID10:高可靠性與高效磁盤結構
  這種結構無非是一個帶區結構加一個鏡象結構,由於兩種結構各有優缺點,所以能夠相互補充,達到既高效又高速的目的。你們能夠結合兩種結構的優勢和缺點來理解這種新結構。這種新結構的價格高,可擴充性很差。主要用於數據容量不大,但要求速度和差錯控制的數據庫中。
  十二、RAID53:高效數據傳送磁盤結構  越到後面的結構就是對前面結構的一種重複和再利用,這種結構就是RAID3和帶區結構的統一,所以它速度比較快,也有容錯功能。但價格十分高,不易於實現。這是由於全部的數據必須通過帶區和按位存儲兩種方法,在考慮到效率的狀況下,要求這些磁盤同步真是不容易。

相關文章
相關標籤/搜索