1、什麼是RAID?算法
磁盤陣列(Redundant Arrays of Independent Disks,RAID),有「獨立磁盤構成的具備冗餘能力的陣列」之意。安全
磁盤陣列是由不少價格較便宜的磁盤,組成一個快速,超大容量的外存儲器系統。它在陣列控制器的控制和管理下,實現快速,並行或交叉存取,並有較強的容錯能力。ide
2、RAID的優點性能
1.提升傳輸速率。RAID經過在多個磁盤上同時存儲和讀取數據來大幅提升存儲系統的數據吞吐量。
ui
2.經過數據校驗提供容錯功能,提供更高的安全性;「虛擬化」使可管理性極大的加強,易於靈活的進行容量擴展;經過冗餘技術和熱備、熱換提高了可靠性,「磁盤分塊」技術帶來性能的提升。spa
3、RAID技術3d
1.磁盤鏡像技術blog
鏡像冗餘使用了磁盤鏡像技術,磁盤鏡像是一個簡單的設備虛擬化技術,每一個I/O操做都會在兩個 磁盤上執行,兩個磁盤看起來就像一個磁盤同樣,鏡像冗餘能夠提升磁盤的讀性能及冗餘性。資源
2.冗餘算法get
根據冗餘算法計算陣列中成員磁盤上數據的校驗信息,將校驗信息保存在其餘的磁盤資源上,保證數據可靠性,和鏡像冗餘相比較,校驗冗餘的開銷更小。
XOR算法:
相同爲假,不一樣爲真
XOR的逆操做是XOR
4、RAID的類型及級別
1.RAID實現的方式:
硬件RAID:有專門的RAID控制處理器和I/O處理芯片來處理RAID任務,不需佔用主機CPU資源
外接式磁盤陣列:經過擴展卡提供適配能力
內接式RAID:主板集成RAID控制器
Software RAID(軟件RAID):功能都依賴於主機CPU完成,沒有第三方的控制處理器和I/O芯片
2.RAID級別:
組成RAID陣列的不一樣方式,不一樣的RAID級別在存儲性能、數據可靠性、存儲成本等方面存在差別。
1)RAID0是以條帶的形式將數據均勻分佈在陣列的各個磁盤上,可提供更快的訪問速度,但並不能爲數據提供更好的保護。
2):RAID1以鏡像爲冗餘方式,對虛擬磁盤上的數據作多份拷貝,放在成員磁盤上,從而爲提供良好的容錯能力。
3) 在RAID3中,數據塊被分爲更小的塊並行傳輸到各個成員磁盤上,同時計算XOR校驗數據存放到專用的校驗磁盤上,該模式將校驗位存儲在獨立的專用磁盤上,於是能夠提供較好的容錯性能。
4) RAID5採用獨立存取的陣列方式,校驗信息被均勻的分散到陣列的各個磁盤上,該模式在增長數據讀取速度的同時還能夠有效地提升數據保護性能。
2.組合RAID
從RAID0到RAID6,不一樣級別的RAID在性能、冗餘、價格等方面作了不一樣程度的折中,組合不一樣級別的RAID,目的是揚長避短,產生具備優點特性的混合RAID級別
重點介紹RAID 10 、 RAID 50
1)RAID10結合RAID1和RAID0,先鏡像,再條帶化。
2)RAID50是RAID5和RAID0的結合,先實現RAID5,再條帶化。
各等級RAID優劣比較
3.軟RAID是由內核中軟件模塊md(multi disks)實現的。由md模擬出邏輯RAID即/dev/md#(#跟級別沒關,只標識設備)。
mdadm:支持將任何塊設備作成RAID.
模式化命令:
建立模式 -C
專用模式:-l 指定級別
-n 設備個數
-a 自動爲其建立設備文件
-c 指定CHUNK大小
管理模式 --add , --del
監控模式 -F
增加模式 -G
裝配模式 -A
實例:用兩塊1G硬盤,作RAID0
1.建立RAID
2.格式化/dev/md0
3.掛載/dev/md0
4.查看RAID狀態