一篇文章搞懂RAID磁盤陣列

RAID概念


磁盤陣列(Redundant Arrays of Independent Disks,RAID),有“獨立磁盤構成的具有冗餘能力的陣列”之意。 磁盤陣列是由很多價格較便宜的磁盤,以硬件(RAID卡)或軟件(MDADM)形式組合成一個容量巨大的磁盤組,利用多個磁盤組合在一起,提升整個磁盤系統效能。利用這項技術,將數據切割成許多區段,分別存放在各個硬盤上。 磁盤陣列還能利用同位檢查(Parity Check)的觀念,在數組中任意一個硬盤故障時,仍可讀出數據,在數據重構時,將數據經計算後重新置入新硬盤中(換了一塊盤,將壞的盤拔掉,將新盤插上,數據還能恢復在新盤上)

注:RAID可以預防數據丟失,但是它並不能完全保證你的數據不會丟失,所以大家使用RAID的同時還是注意備份重要的數據

RAID的創建有兩種方式:軟RAID(通過操作系統軟件來實現)和硬RAID(使用硬件陣列卡);在企業中用的最多的是:raid1、raid5和raid10。不過隨着雲的高速發展,供應商一般可以把硬件問題解決掉。

 

RAID幾種常見的類型


RAID類型

最低磁盤個數

空間利用率

各自的優缺點

級 別

說 明

RAID0

條帶卷

2+

100%

讀寫速度快,不容錯

RAID1

鏡像卷

2

50%

讀寫速度一般,容錯

RAID5

帶奇偶校驗的條帶卷

3+

(n-1)/n

讀寫速度快,容錯,允許壞一塊盤損壞兩塊以上數據會丟失

RAID6

帶奇偶校驗的條帶集,雙校驗

4+

(n-2)/n

讀寫快,容錯,允許壞兩塊盤

RAID10

RAID1的安全+RAID0的高速

4

50%

讀寫速度快,容錯

RAID50

RAID5的安全+RAID0的高速

6

(n-2)/n

讀寫速度快,容錯

RAID基本思想:把好幾塊硬盤通過一定組合方式把它組合起來,成爲一個新的硬盤陣列組,從而使它能夠達到高性能硬盤的要求(raid 5,raid 10,raid1用的最多)

RAID有三個關鍵技術:

鏡像:提供了數據的安全性;

chunk條帶(塊大小也可以說是條帶的粒度),它的存在的就是爲了提高I/O,提供了數據併發性

數據的校驗:提供了數據的安全

Raid相對於單個磁盤優點:

 

6T,10T的磁盤我們就認爲很大了,如果做成20T,30T都是沒有問題的,raid相當於普通磁盤來說容量大。

 

 

RAID0


RAID0 是一種簡單的、無數據校驗的數據條帶化技術。實際上不是一種真正的 RAID ,因爲它並不提供任何形式的冗餘策略。 RAID0 將所在磁盤條帶化後組成大容量的存儲空間,將數據分散存儲在所有磁盤中,以獨立訪問方式實現多塊磁盤的並讀訪問。由於可以併發執行 I/O 操作,總線帶寬得到充分利用。再加上不需要進行數據校驗, RAID0 的性能在所有 RAID 等級中是最高的。理論上講,一個由 n 塊磁盤組成的 RAID0 ,它的讀寫性能是單個磁盤性能的 n 倍,但由於總線帶寬等多種因素的限制,實際的性能提升低於理論值。

RAID0 具有低成本、高讀寫性能、 100% 的高存儲空間利用率等優點,但是它不提供數據冗餘保護,一旦數據損壞,將無法恢復。 因此, RAID0 一般適用於對性能要求嚴格但對數據安全性和可靠性不高的應用,如視頻、音頻存儲、臨時數據緩存空間等。

 

RAID1


RAID1 稱爲鏡像,它將數據完全一致地分別寫到工作磁盤和鏡像 磁盤,它的磁盤空間利用率爲 50% 。 RAID1 在數據寫入時,響應時間會有所影響,但是讀數據的時候沒有影響。 RAID1 提供了最佳的數據保護,一旦工作磁盤發生故障,系統自動從鏡像磁盤讀取數據,不會影響用戶工作。

RAID1 與 RAID0 剛好相反,是爲了增強數據安全性使兩塊 磁盤數據呈現完全鏡像,從而達到安全性好、技術簡單、管理方便。 RAID1 擁有完全容錯的能力,但實現成本高。 RAID1 應用於對順序讀寫性能要求高以及對數據保護極爲重視的應用,如對郵件系統的數據保護。

 

 

RAID5


RAID5 應該是目前最常見的 RAID 等級,它的原理與 RAID4 相似,區別在於校驗數據分佈在陣列中的所有磁盤上,而沒有采用專門的校驗磁盤。對於數據和校驗數據,它們的寫操作可以同時發生在完全不同的磁盤上。因此, RAID5 不存在 RAID4 中的併發寫操作時的校驗盤性能瓶頸問題。另外, RAID5 還具備很好的擴展性。當陣列磁盤 數量增加時,並行操作量的能力也隨之增長,可比 RAID4 支持更多的磁盤,從而擁有更高的容量以及更高的性能。

RAID5 的磁盤上同時存儲數據和校驗數據,數據塊和對應的校驗信息存保存在不同的磁盤上,當一個數據盤損壞時,系統可以根據同一條帶的其他數據塊和對應的校驗數據來重建損壞的數據。與其他 RAID 等級一樣,重建數據時, RAID5 的性能會受到較大的影響。

RAID5 兼顧存儲性能、數據安全和存儲成本等各方面因素,它可以理解爲 RAID0 和 RAID1 的折中方案,是目前綜合性能最佳的數據保護解決方案。 RAID5 基本上可以滿足大部分的存儲應用需求,數據中心大多采用它作爲應用數據的保護方案。

 

RAID 組合等級


標準 RAID 等級各有優勢和不足。自然地,我們想到把多個 RAID 等級組合起來,實現優勢互補,彌補相互的不足,從而達到在性能、數據安全性等指標上更高的 RAID 系統。目前在業界和學術研究中提到的 RAID 組合等級主要有 RAID00 、 RAID01 、 RAID10 、 RAID100 、 RAID30 、 RAID50 、 RAID53 、 RAID60 ,但實際得到較爲廣泛應用的只有 RAID01 和 RAID10 兩個等級。當然,組合等級的實現成本一般都非常昂貴,只是在 少數特定場合應用。

 

RAID10 和 RAID01


一些文獻把這兩種 RAID 等級看作是等同的,本文認爲是不同的。 RAID01 是先做條帶化再作鏡像,本質是對物理磁盤實現鏡像;而 RAID10 是先做鏡像再作條帶化,是對虛擬磁盤實現鏡像。相同的配置下,通常 RAID01 比 RAID10 具有更好的容錯能力。

RAID01 兼備了 RAID0 和 RAID1 的優點,它先用兩塊磁盤建立鏡像,然後再在鏡像內部做條帶化。 RAID01 的數據將同時寫入到兩個磁盤陣列中,如果其中一個陣列損壞,仍可繼續工作,保證數據安全性的同時又提高了性能。 RAID01 和 RAID10 內部都含有 RAID1 模式,因此整體磁盤利用率均僅爲 50% 。

 

 

 

RAID硬盤失效處理


一般兩種處理方法:熱備和熱插拔

熱備:HotSpare

定義:當冗餘的RAID組中某個硬盤失效時,在不干擾當前RAID系統的正常使用的情況下,用RAID系統中另外一個正常的備用硬盤自動頂替失效硬盤,及時保證RAID系統的冗餘性

全局式:備用硬盤爲系統中所有的冗餘RAID組共享

專用式:備用硬盤爲系統中某一組冗餘RAID組專用

如下圖所示:是一個全局熱備的示例,該熱備盤由系統中兩個RAID組共享,可自動頂替任何一個RAID中的一個失效硬盤

 

熱插拔:HotSwap

定義:在不影響系統正常運轉的情況下,用正常的物理硬盤替換RAID系統中失效硬盤。

 

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