Raid基礎

Raid

獨立磁盤冗餘數組(RAID, Redundant Array of Independent Disks),舊稱廉價磁盤冗餘數組(RAID, Redundant Array of Inexpensive Disks),簡稱硬盤陣列。由很多價格較便宜的磁盤,組合成一個容量巨大的磁盤組,利用個別磁盤提供數據所產生加成效果提升整個磁盤系統效能。利用這項技術,將數據切割成許多區段,分別存放在各個硬盤上磁盤陣列還能利用同位檢查(Parity Check)的觀念,在數組中任一顆硬盤故障時,仍可讀出數據,在數據重構時,將數據經計算後重新置入新硬盤中。

   簡單來說,RAID把多個硬盤組合成爲一個邏輯扇區,因此,操作系統只會把它當作一個硬盤。RAID常被用在服務器電腦上,並且常使用完全相同的硬盤作爲組合。

樣式:

   磁盤陣列其樣式有三種,一是外接式磁盤陣列櫃、二是內接式磁盤陣列卡,三是利用軟件來仿真。

   外接式磁盤陣列櫃最常被使用大型服務器上,具可熱抽換(Hot Swap)的特性,不過這類產品的價格都很貴。

內接式磁盤陣列卡,因爲價格便宜,但需要較高的安裝技術,適合技術人員使用操作。

   利用軟件仿真的方式,由於會拖累機器的速度,不適合大數據流量的服務器。

實現方式:

   磁盤陣列有兩種方式可以實現,即“軟件陣列”與“硬件陣列”

   軟件陣列是指通過網絡操作系統自身提供的磁盤管理功能將連接的普通SCSI卡上的多塊硬盤配置成邏輯盤,組成陣列。軟件陣列可以提供數據冗餘功能,但是磁盤子系統的性能會有所降低,有的降低幅度還比較大,達30%左右。
硬件陣列是使用專門的磁盤陣列卡來實現的。硬件陣列能夠提供在線擴容、動態修改陣列級別、自動數據恢復、驅動器漫遊、超高速緩衝等功能。它能提供性能、數據保護、可靠性、可用性和可管理性的解決方案。陣列卡專用的處理單元來進行操作,它的性能要遠遠高於常規非陣列硬盤,並且更安全更穩定。
   磁盤陣列其實也分爲軟陣列 (Software Raid)和硬陣列 (Hardware Raid) 兩種。軟陣列即通過軟件程序並由計算機的 CPU提供運行能力所成。 由於軟件程式不是一個完整系統故只能提供最基本的 RAID容錯功能,其他如熱備用硬盤的設置, 遠程管理等功能均一一欠奉。硬陣列是由獨立操作的硬件提供整個磁盤陣列的控制和計算功能,不依靠系統的CPU資源。由於硬陣列是一個完整的系統,所有需要的功能均可以做進去。所以硬陣列所提供的功能和性能均比軟陣列好;而且,如果你想把系統也做到磁盤陣列中,硬陣列是唯一的選擇。故我們可以看市場上 RAID 5 級的磁盤陣列均爲硬陣列, 軟陣列只適用於 Raid 0 和 Raid 1。對於我們做鏡像用的鏡像塔, 肯定不會用 Raid 0或 Raid 1。作爲高性能的存儲系統,已經得到了越來越廣泛的應用。RAID的級別從RAID概念的提出到現在,已經發展了六個級別, 其級別分別是0、1、2、3、4、5等。但是最常用的是0、1、3、5四個級別。


Raid技術

Raid 0

將多個磁盤合併成一個大的磁盤,不具有冗餘,並行I/O,速度最快。它是將多個磁盤並列起來,成爲一個大磁盤。在存放數據時,其將數據按磁盤的個數來進行分段,然後同時將這些數據寫進這些盤中,所以在所有的級別中,RAID 0的速度是最快的。但是RAID 0沒有冗餘功能,如果一個磁盤(物理)損壞,則所有的數據都會丟失。理論上越多的磁盤性能就等於“單一磁盤性能”ד磁盤數”,但實際上受限於總線I/O瓶頸及其它因素的影響,RAID性能會隨邊際遞減,也就是說,假設一個磁盤的性能是50MB每秒,兩個磁盤的RAID 0性能約96MB每秒,三個磁盤的RAID 0也許是130MB每秒而不是150MB每秒,所以兩個磁盤的RAID 0最能明顯感受到性能的提升。但如果是以軟件方式來實現RAID,則磁盤的空間則不見得受限於此(例如Linux Software RAID),通過軟件實現可以經由不同的組合而善用所有的磁盤空間。

RAID 0

Raid 1

RAID 1就是鏡像。其原理是在主硬盤上存放數據的同時也在鏡像硬盤上寫同樣的數據。當主硬盤(物理)損壞時,鏡像硬盤則代替主硬盤的工作。因爲有鏡像硬盤做數據備份,所以RAID 1的數據安全性在所有的RAID級別上來說是最好的。但無論用多少磁盤做RAID 1,僅算一個磁盤的容量,是所有RAID上磁盤利用率最低的一個級別。

它是通過磁盤數據鏡像實現數據冗餘,在成對的獨立磁盤上產生互爲備份的數據。當原始數據繁忙時,可直接從鏡像拷貝中讀取數據,因此RAID 1可以提高讀取性能。RAID 1是磁盤陣列中單位成本最高的,但提供了很高的數據安全性和可用性。當一個磁盤失效時,系統可以自動切換到鏡像磁盤上讀寫,而不需要重組失效的數據。

RAID 1

Raid 5

RAID 5 是一種儲存性能、數據安全和存儲成本兼顧的存儲解決方案。RAID 5 至少需要三顆硬盤,RAID 5是把數據和相對應的奇偶校驗信息存儲到組成RAID5的各個磁盤上,並且奇偶校驗信息和相對應的數據分別存儲於不同的磁盤上當RAID5的一個磁盤數據發生損壞後,可以利用剩下的數據和相應的奇偶校驗信息去恢復被損壞的數據raid5這種存儲方式只允許有一塊硬盤出現故障,出現故障時需要儘快更換。 RAID 5可以爲系統提供數據安全保障,但保障程度要比鏡像低而磁盤空間利用率要比鏡像高。RAID 5具有和RAID 0相近似的數據讀取速度,只是因爲多了一個奇偶校驗信息,寫入數據的速度相當的慢,若使用“回寫高速緩存”可以讓性能改善不少。同時由於多個數據對應一個奇偶校驗信息,RAID 5的磁盤空間利用率要比RAID 1高,存儲成本相對較便宜。RAID 5

Raid 1+0

RAID 1+0是先鏡射再分區數據,再將所有硬盤分爲兩組,視爲是RAID 0的最低組合,然後將這兩組各自視爲RAID 1運作。

RAID 0+1則是跟RAID 1+0的程序相反,是先分區再將數據鏡射到兩組硬盤。它將所有的硬盤分爲兩組,變成RAID 1的最低組合,而將兩組硬盤各自視爲RAID 0運作。

性能上,RAID 0+1比RAID 1+0有着更快的讀寫速度。可靠性上,當RAID 1+0有一個硬盤受損,其餘三個硬盤會繼續運作。RAID 0+1 只要有一個硬盤受損,同組RAID 0的另一隻硬盤亦會停止運作,只剩下兩個硬盤運作,可靠性較低。因此,RAID 10遠較RAID 01常用,零售主板絕大部份支持RAID 0/1/5/10。

RAID 1+0

總結:


類型讀寫性能安全性磁盤利用率成本應用方面
RAID0最好(因並行性而提高)最差(完全無安全保障)最高(100%)最低個人用戶
RAID1讀和單個磁盤無分別,寫則要寫兩邊最高(提供數據的百分之百備份)差(50%)最高適用於存放重要數據,如服務器和數據庫存儲等領域
RAID5

讀:RAID 5=RAID 0(相近似的數據讀取速度)

寫:RAID 5<對單個磁盤進行寫入操作(多了一個奇偶校驗信息寫入)

RAID 5<RAID 1RAID 5>RAID 1RAID 5<RAID 1是一種存儲性能、數據安全和存儲成本兼顧的存儲解決方案。
RAID10

讀:RAID10=RAID0

寫:RAID10=RAID1

RAID10=RAID1RAID10=RAID1(50%)RAID10=RAID1集合了RAID0,RAID1的優點,但是空間上由於使用鏡像,而不是類似RAID5的“奇偶校驗信息”,磁盤利用率一樣是50%
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章