Linux之RAID的介紹
磁盤陣列(Redundant Arrays of Independent Drives,RAID),有“獨立磁盤構成的具有冗余能力的陣列”之意。
RAID技術通過把多個硬盤設備組合成一個容量更大、安全性更好的磁盤陣列,並把數據切割成多個區段後分別存放在各個不同的物理硬盤設備上,然後利用分散讀寫技術來提升磁盤陣列整體的性能,同時把多個重要數據的副本同步到不同的物理硬盤設備上,從而起到了非常好的數據冗余備份效果。
磁盤陣列還能利用同位檢查(Parity Check)的觀念,在數組中任意一個硬盤故障時,仍可讀出數據,在數據重構時,將數據經計算後重新置入新硬盤中。
2 RAID分類
外接式磁盤陣列櫃,最常被使用大型服務器上,具可熱交換(Hot Swap)的特性,不過這類產品的價格都很貴。
內接式磁盤陣列卡,因為價格便宜,但需要較高的安裝技術,適合技術人員使用操作。硬件陣列能夠提供在線擴容、動態修改陣列級別、自動數據恢復、驅動器漫遊、超高速緩沖等功能。它能×××能、數據保護、可靠性、可用性和可管理性的解決方案。陣列卡專用的處理單元來進行操作。
利用軟件仿真的方式,是指通過網絡操作系統自身提供的磁盤管理功能將連接的普通SCSI卡上的多塊硬盤配置成邏輯盤,組成陣列。軟件陣列可以提供數據冗余功能,但是磁盤子系統的性能會有所降低,有的降低幅度還比較大,達30%左右。因此會拖累機器的速度,不適合×××量的服務器。
3 RAID 0
RAID 0技術把多塊物理硬盤設備(至少兩塊)通過硬件或軟件的方式串聯在一起,組成一個大的卷組,並將數據依次寫入到各個物理硬盤中。這樣一來,在最理想的狀態下,硬盤設備的讀寫性能會提升數倍,但是若任意一塊硬盤發生故障將導致整個系統的數據都受到破壞。通俗來說,RAID 0技術能夠有效地提升硬盤數據的吞吐速度,但是不具備數據備份和錯誤修復能力。
存儲時數據被分別寫入到不同的硬盤設備中,即disk1和disk2硬盤設備會分別保存數據資料,最終實現提升讀取、寫入速度的效果。
RAID0技術示意圖
優點
- 讀寫性能高,可用容量為各個磁盤的容量和
缺點 - 無容錯,無冗余,不適用於安全性要求高的類型
4 RAID1
RAID 1稱為磁盤鏡像,原理是把一個磁盤的數據鏡像到另一個磁盤上,也就是說數據在寫入一塊磁盤的同時,會在另一塊閑置的磁盤上生成鏡像文件,在不影響性能情況下最大限度的保證系統的可靠性和可修復性上,只要系統中任何一對鏡像盤中至少有一塊磁盤可以使用,甚至可以在一半數量的硬盤出現問題時系統都可以正常運行,當一塊硬盤失效時,系統會忽略該硬盤,轉而使用剩余的鏡像盤讀寫數據,具備很好的磁盤冗余能力。雖然這樣對數據來講絕對安全,但是成本也會明顯增加,磁盤利用率為50%。
RAID1是把兩塊以上的硬盤設備進行綁定,在寫入數據時,是將數據同時寫入到多塊硬盤設備上(可以將其視為數據的鏡像或備份)。當其中某一塊硬盤發生故障後,一般會立即自動以熱交換的方式來恢復數據的正常使用。
RAID1技術示意圖
優點
- 很高的數據冗余能力,安全性高
缺點 - 磁盤容量是總容量的一半,成本高
5 RAID5
RAID 5磁盤陣列組中數據的奇偶校驗信息並不是單獨保存到某一塊硬盤設備中,而是存儲到除自身以外的其他每一塊硬盤設備上,這樣的好處是其中任何一設備損壞後不至於出現致命缺陷; RAID 5技術實際上沒有備份硬盤中的真實數據信息,而是當硬盤設備出現問題後通過奇偶校驗信息來嘗試重建損壞的數據。RAID這樣的技術特性“妥協”地兼顧了硬盤設備的讀寫速度、數據安全性與存儲成本問題。
當其中有1塊硬盤出現損壞的時候,就從另外2塊硬盤上存儲的數據可以計算出第3塊硬盤的數據內容。也就是說RAID5這種存儲方式只允許有一塊硬盤出現故障,出現故障時需要盡快更換。當更換故障硬盤後,在故障期間寫入的數據會進行重新校驗。 如果在未解決故障又壞1塊,那就是災難性的了。
RAID5技術示意圖
優點
- 容錯性,數據冗余能力,讀性能高,安全性較高
缺點 - 與RAID 1相比,由於采用的是奇偶校驗方式,數據保障程度要差一些,而磁盤利用率要高一些。
6 RAID10
RAID 10技術是RAID 1+RAID 0技術的一個“組合體”。RAID 10技術需要至少4塊硬盤來組建,其中先分別兩兩制作成RAID 1磁盤陣列,以保證數據的安全性;然後再對兩個RAID 1磁盤陣列實施RAID 0技術,進一步提高硬盤設備的讀寫速度。這樣從理論上來講,只要壞的不是同一組中的所有硬盤,那麽最多可以損壞50%的硬盤設備而不丟失數據。由於RAID 10技術繼承了RAID 0的高讀寫速度和RAID 1的數據安全性,在不考慮成本的情況下RAID 10的性能都超過了RAID 5,因此當前成為廣泛使用的一種存儲技術。
RAID 10技術示意圖
優點:
-100%數據冗余,安全性高
缺點:
-價格相對較高,磁盤利用率50%
Linux之RAID的介紹