raid技術簡介

Raid是什麼?


       獨立磁盤冗餘陣列(RAID,Redundant Array of Independent Disks),在早期也稱爲廉價磁盤冗餘陣列,簡稱爲磁盤陣列。Raid就是將兩個以上的物理磁盤在邏輯上捆綁在一起,數據以條帶式的形式順序保存在各個磁盤上,對外作爲一個邏輯的設備提供服務。磁盤陣列中可包含配置成Raid的磁盤和用於後備的磁盤。

  簡單來說,RAID把多個物理硬盤組合成爲一個邏輯磁盤,因此,操作系統只會把一個raid陣列當作一個硬盤。RAID常被用在服務器計算機上,並且常使用完全相同的硬盤作爲組合。由於硬盤價格的不斷下降與RAID功能更加有效地與主板集成,它也成爲了玩家的一個選擇,特別是需要大容量存儲空間的工作。     最初的RAID分成了不同的等級,每種等級都有其理論上的優缺點,不同的等級在兩個目標間取得平衡,分別是增加數據可靠性以及增加存儲器(集羣)讀寫性能。常見RAID級別分爲RAID-0RAID-1RAID-5RAID-6RAID-1ERAID-10RAID-50RAID-60。

  Raid可以按照不同的標準進行分類。按照其實現方法分類可分爲硬件Raid和軟件Raid。硬件Raid的主要特點是其I/O處理有專門的IOP(IO處理器)來執行;軟件RaidI/O指令從主機的CPU獲得。根據不同的鏈接方式,Raid又可分爲外接式和內置式。

Raid級別簡介



Raid0

wKioL1m_sQ3TuZkwAACQH9A7xko887.jpg

  將多個磁盤合併成一個大的磁盤,不具有冗餘,並行I/O,速度最快。RAID 0亦稱爲帶區集。它是將多個磁盤並列起來,成爲一個大磁盤。在存放數據時,其將數據按磁盤的個數來進行分段,然後同時將這些數據寫進這些盤中,所以在所有的級別中,RAID 0的速度是最快的。但是RAID 0沒有冗餘功能,如果一個磁盤(物理)損壞,則所有的數據都會丟失,危險程度與JBOD相當。

  理論上越多的磁盤性能就等於單一磁盤性能”ד磁盤數,但實際上受限於總線I/O瓶頸及其它因素的影響,RAID性能會隨邊際遞減,也就是說,假設一個磁盤的性能是50MB每秒,兩個磁盤的RAID 0性能約96MB每秒,三個磁盤的RAID 0也許是130MB每秒而不是150MB每秒。可使用容量是硬盤總數乘以單塊硬盤的最小容量:Size=N*minS1S2S3...Sn)。

Raid 1

wKiom1m_sU3x1D3hAACPUX0vg3g420.jpg  

  RAID1是將一個兩塊硬盤所構成RAID磁盤陣列,其容量僅等於一塊硬盤的容量,因爲另一塊只是當作數據鏡像RAID 1磁盤陣列顯然是最可靠的一種陣列,因爲它總是保持一份完整的數據備份。它的性能自然沒有RAID 0磁盤陣列那樣好,但其數據讀取確實較單一硬盤來的快,因爲數據會從兩塊硬盤中較快的一塊中讀出。RAID 1磁盤陣列的寫入速度通常較慢,因爲數據得分別寫入兩塊硬盤中並做比較。RAID 1磁盤陣列一般支持熱交換,就是說陣列中硬盤的移除或替換可以在系統運行時進行,無須中斷退出系統。RAID 1磁盤陣列是十分安全的,不過也是較貴一種RAID磁盤陣列解決方案,因爲兩塊硬盤僅能提供一塊硬盤的容量。RAID 1磁盤陣列主要用在數據安全性很高,而且要求能夠快速恢復被破壞的數據的場合。

Raid 5

wKiom1m_sVqyC77-AAEQfbCRRgo587.jpg

  RAID Level 5是一種儲存性能、數據安全和存儲成本兼顧的存儲解決方案。它使用的是Disk Striping技術。RAID 5至少需要三顆硬盤,RAID 5不是對存儲的數據進行備份,而是把數據和相對應的奇偶校驗信息存儲到組成RAID5的各個磁盤上,並且奇偶校驗信息和相對應的數據分別存儲於不同的磁盤上。當RAID5的一個磁盤數據發生損壞後,可以利用剩下的數據和相應的奇偶校驗信息去恢復被損壞的數據。

  RAID 5可以理解爲是RAID 0RAID 1的折衷方案。RAID 5可以爲系統提供數據安全保障,但保障程度要比鏡像低而磁盤空間利用率要比鏡像高。RAID 5具有和RAID 0相近似的數據讀取速度,只是因爲多了一個奇偶校驗信息,寫入數據的速度相對單獨寫入一塊硬盤的速度略慢,若使用回寫高速緩存可以讓性能改善不少。同時由於多個數據對應一個奇偶校驗信息,RAID 5的磁盤空間利用率要比RAID 1高,存儲成本相對較便宜。

  可使用的容量爲硬盤總數減去1的差,乘以單塊硬盤的最小容量,公式爲Size=N-1*minS1S2S3...Sn

Raid 6

wKioL1m_sTbCohpJAAEONBpBfhM086.jpg  

  與RAID 5相比,RAID 6增加了第二個獨立的奇偶校驗信息塊。兩個獨立的奇偶系統使用不同的算法,數據的可靠性非常高,即使兩塊磁盤同時失效也不會影響數據的使用。但RAID 6需要分配給奇偶校驗信息更大的磁盤空間,相對於RAID 5有更大的寫損失,因此寫性能非常差。較差的性能和複雜的實作方式使得RAID 6很少得到實際應用。

  同一數組中最多容許兩個磁盤損壞。更換新磁盤後,數據將會重新算出並寫入新的磁盤中。依照設計理論,RAID 6必須具備四個以上的磁盤才能生效。

  可使用的容量爲硬盤總數減去2的差,乘以單塊硬盤的最小容量,公式爲Size=N-2*minS1S2S3...Sn

Raid 10

wKiom1m_sXfQ1C37AADhm3j9Fdo785.jpg   

  RAID 1RAID 0的組合,先作RAID 1,再作RAID 0,也就是對多組RAID 1彼此構成Stripe訪問。由於RAID 10是以RAID 1爲基礎,而RAID 1至少需要2塊硬盤,因此要以多組RAID1構成RAID 10,至少需要4塊硬盤。以RAID 10最小的4臺硬盤組態爲例,先把4臺硬盤分爲2組,每組2臺構成RAID 1,如此就得到兩組RAID 1,然後再把兩組RAID 1構成RAID 0

  RAID10在底層的任一組或多組RAID 1中出現1臺硬盤損壞時,仍能維持運作,不過如果任一組RAID 1中的兩塊硬盤損毀,整組RAID10就會失效。

  RAID10由於在上層把多組RAID 1構成Stripe,容量利用率是50%,例如:4塊硬盤做的raid10的總容量是兩塊硬盤的容量。

Raid1E

wKiom1m_sf3jg1jYAADDZIZtbm0025.png  

  RAID-1E:(也叫做混合型或者增強型RAID1)以鏡像的方式將數據分條帶分佈存儲於各硬盤上。由IBM公司提出的一種私有RAID級別,沒有成爲國際標準。它並不是我們通常所說的RAID 0+1的組合。RAID 1E的工作原理與RAID1基本上是一樣的,只是RAID 1E的數據恢復能力更強,但由於RAID 1E寫一份數據至少要兩次,因此,RAID處理器的負載被增強,從而造成磁盤讀寫能力的下降。RAID 1E至少需要3塊硬盤才能實現。RAID1E整合了鏡象和數據條帶。該陣列級別的數據條帶及數據備份貫穿在邏輯盤中所有的硬盤當中。跟RAID1一樣,數據是鏡象的,邏輯盤的容量是硬盤總容量的一半。RAID1ERAID1類似,它能提供數據冗餘及高的性能,但存儲容量減少。然而,RAID1E允許使用更多的物理硬盤。

 Raid 50

wKiom1m_sY2zAYMfAAI98L4ojmE398.jpg  

  RAID 5RAID 0的組合,先作RAID 5,再作RAID 0,也就是對多組RAID 5彼此構成Stripe訪問。由於RAID 50是以RAID 5爲基礎,而RAID 5至少需要3臺硬盤,因此要以多組RAID5構成RAID 50,至少需要6臺硬盤。以RAID 50最小的6臺硬盤組態爲例,先把6臺硬盤分爲2組,每組3臺構成RAID 5,如此就得到兩組RAID 5,然後再把兩組RAID 5構成RAID 0

  RAID50在底層的任一組或多組RAID 5中出現1臺硬盤損壞時,仍能維持運作,不過如果任一組RAID 5中出現2臺或兩臺以上硬盤損毀,整組RAID 50就會失效。

  RAID50由於在上層把多組RAID 5構成Stripe,性能比起單純的RAID 5高,容量利用率比RAID5要低。比如同樣9塊硬盤,RAID 503RAID 5組成RAID 0,每個RAID 5會損失一塊硬盤的容量,利用率爲(1-3/9)RAID 5則爲(1-1/9)

 Raid 60

wKiom1m_sZvTtT1gAAE0fnl7gg0403.jpg   

  RAID 6RAID 0的組合:先作RAID 6,再作RAID 0。換句話說,就是對兩組以上的RAID 6Stripe訪問。RAID 6至少需具備4塊硬盤,所以RAID 60的最小需求是8塊硬盤。

  由於底層是以RAID 6組成,所以RAID 60可以容許任一組RAID 6中損毀最多2塊硬盤,而系統仍能維持運作;不過只要底層任一組RAID 6中損毀3塊硬盤,整組RAID 60就會失效,當然這種情況的機率相當低。

  比起單純的RAID 6RAID 60的上層通過結合多組RAID6構成Stripe訪問,因此性能較高。不過使用門檻高,而且容量利用率低是較大的問題


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章