服務器磁盤raid0,raid1,raid10,raid5,raid50,raid6,raid60 分析與案例

1,raid0的特性:採用剝離,數據將在幾個磁盤上進行分割。數據被分成很多數據塊,每一數據塊會被寫入不同的磁盤。從而,每一磁盤的工作負荷都得到了降低,這有助於加速數據傳輸。RAID-0可讓磁盤更好地響應,尤其是電子郵件、數據庫和互聯網應用。實施RAID-0最少需要兩塊硬盤。優勢:通過把I/O負載分佈到多個硬盤上,可提高系統性能。實施簡單。需要注意的是:RAID-0不具有數據保護功能,不適合於關鍵數據。

2,raid1的特性:RAID-1通過磁盤鏡像來實現,主要用來確保數據的可靠性。同樣的數據將被複制存儲到不同的磁盤上,如果某個磁盤出現故障,還可以在陣列內的某個磁盤上找到相應的數據,因此可以很容易地進行恢復。鏡像不但可以創建冗餘數據而帶來高可用性,還可以保持關鍵應用的正常運行。優勢:數據讀取的性能有所提高,而數據寫入性能與單個磁盤沒有區別。100%數據冗餘意味着某個出現磁盤故障時不需要對數據進行重建。需要注意的是:磁盤容量的低效率使用-在所有RAID類型中費用最高(100%)。

3,raid10的特性:RAID-10是RAID-1和RAID-0的結合。此配置要求至少4塊硬盤,在所有RAID等級中,性能、保護功能及容量都是最佳的。RAID-10包含成對的鏡像磁盤,其數據在整個陣列上進行剝離。多數情況下,RAID-10能夠承受多個磁盤出現故障的情況,因此更能保證系統的正常運行。其數據丟失的機率最小。優勢:與RAID-1(鏡像)有同樣的冗餘特性,是數據保護的理想選擇。需要注意的是:可能價格很高,與鏡像磁盤陣列有關。

4,raid5的特性:RAID-5通過一種稱爲奇偶檢驗的技術保持數據的冗餘。在多個磁盤上進行數據剝離時,奇偶位數據也會包括在內並分佈於陣列內的所有磁盤上。奇偶數據用於保持數據的完整性並在磁盤出現故障時進行重建。如果陣列內的某個磁盤出現故障,丟失的數據可以根據其它磁盤上的奇偶位數據進行重建。RAID-5配置要求至少3塊硬盤。優勢:更有效地利用所有冗餘RAID配置的磁盤容量。保持良好的讀寫性能。需要注意的是:磁盤故障會影響吞吐速率。故障後重建信息的時間比鏡像配置情況下要長。

5,raid50的特性:RAID-50是RAID-5與RAID-0的結合。此配置在RAID-5的子磁盤組的每個磁盤上進行包括奇偶信息在內的數據的剝離。每個RAID-5子磁盤組要求三個硬盤。RAID-50具備更高的容錯能力,因爲它允許某個組內有一個磁盤出現故障,而不會造成數據丟失。而且因爲奇偶位分部於RAID-5子磁盤組上,故重建速度有很大提高。優勢:更高的容錯能力,具備更快數據讀取速率的潛力。需要注意的是:磁盤故障會影響吞吐量。故障後重建信息的時間比鏡像配置情況下要長。

6,raid6的特性:

RAID6的性能:

  (1)RAID6的隨機讀取性能:很好(當使用大數據塊時)。

  (2)RAID6的隨機寫入性能:差,因爲不但要在每硬盤上寫入校驗數據而且要在專門的校驗硬盤上寫入數據。

  (3)RAID6的持續讀取性能:好(當使用小數據塊時)。

  (4)RAID6的持續寫入性能:一般。

  (5)RAID6的優點:快速的讀取性能,更高的容錯能力。

  (6)RAID6的缺點:很慢的寫入速度,RAID控制器在設計上更加複雜,成本更高。

7.raid60的特性:

具備更高的容錯性,支持同時兩塊硬盤出現故障的修復功能,和更高的讀性能。技術上還存在一定的問題,不夠成熟,目前很少使用者。




RAID 50中:4塊盤組成單組RAID 5,然後兩組RAID 5再組成RAID 0最後得到8塊盤的RAID 50

考慮使用RAID 50替換RAID 10(SSD篇)

案例分析:

第1塊盤的容錯概率都是100%,可見磁盤陣列最基本的能力就是容錯,然而不同級別的陣列能夠提供的數據保護能力也是不同的;

從第2塊盤開始除了RAID 6能夠提供100%的故障可用性以外,其他包括RAID 10在內都不能提供完美的解決方案。同時我們可以發現RAID 5的容錯能力是四者中最差的,但是要達到同樣容量所需要的盤數量也是最少的,如果故障運維較爲及時的話RAID 5是一個性價比較高的方案,不然在第一塊盤故障後至陣列修復期間如果發生第二塊盤故障就會導整個陣列故障(數據全部丟失),這就是風險所在;

RAID 6當然是較爲可靠的方案,但是它要犧牲兩塊盤的容量並且性能也較差(後面有性能測試說明),所以要權衡性能和可用性;

當然重點還是RAID 10和50:我們發現50在第二塊盤故障時的可用概率和10比較接近,由於上述案例中只有兩組RAID 5因此只能提供至最多兩塊盤的容錯,如果RAID 5的組數量更多的話能夠容錯的盤數也將更多,且可用概率也會更高。

我們以9塊盤RAID 50(3組RAID 5)爲例作分析(達到相同容量的RAID 10需要12塊盤):

考慮使用RAID 50替換RAID 10(SSD篇)

再以12塊盤RAID 50(4組RAID 5)爲例作分析(達到相同容量的RAID 10需要16塊盤):

考慮使用RAID 50替換RAID 10(SSD篇)

上面對比中RAID 50已經能夠容忍第3甚至第4塊盤的故障,只是可用性相比RAID 10低了些,但是兩者都不能達到完美的100%,所以權衡可用性和成本RAID 50還是有相當大的優勢。

接下來看看性能,爲了能夠很好地分析性能,我們沿用了第一組對比方案的作性能分析:

考慮使用RAID 50替換RAID 10(SSD篇)

隨機讀分析:

理論上認爲R10性能最好,真實測試數據顯示4K、8K數據塊下R5、R50、R6的性能都要優於R10;

當數據塊增大到16K、32K時,R10的多盤優勢才被逐漸體現出來。

隨機寫分析:

4K由於R50、R5由於有大量校驗計算一定程度上影響了性能,但隨着數據塊逐漸增大,盤數量的優勢也顯現出來。當數據塊達到和超過8K時,R50性能全面超越了R10;

R10由於存在R1的寫同步問題,因此只有4塊盤在支撐併發寫,隨着數據塊的增大,R50和R5的多盤性能優勢開始發揮。

混合隨機讀寫分析:

得益多盤和無校驗計算,混合讀寫R10領先;R50其次,和R10相差27%,性能也較爲接近,R5和R50性能爲線性關係,R6性能最差。

順序讀分析:

由於不存在校驗計算,順序讀性能基本上由盤的數量決定;R50和R10性能也較爲接近,同盤數的R6和R50性能相當,而盤數較少的R5性能相對前三者要弱一些,符合預期。至於爲何R10性能無法線性增加,主要是因爲陣列卡本身的性能限制。

順序寫分析:

順序寫R5被優化得最好;R50由於需要同時計算兩次校驗因此損失了一些性能,和R10性能相當,當數據塊達到512K時,多盤優勢進一步體現出來了,拉開了與R10的差距;R6由於校驗和計算的實現較爲複雜,順序寫性能也是最差的。

性能測試結論:

性能測試顯示,相同容量的R50和R10性能接近:其中小塊文件的隨機讀R50要全面好於R10,隨機寫4K雖然R50和R10差距在28%,但是塊增大後R50要全面優於R10。順序讀寫方面,R50和R10十分接近。

容錯方面,R50接近R10:第二塊盤容錯率R50十分接近R10,兩者相差30%。R10的優勢主要是在有一定的概率提供第三、甚至第四塊磁盤的容錯率,但是考慮到並非100%容錯,因此從容錯角度來看R50雖然和R10有一些差距,但也已體現出較好的容錯率,至少優於R5。而且R50搭配靈活,甚至可以指定3組R5以達到最大3塊磁盤的容錯;

成本方面,R50有很大優勢:按這個配置計算R50只有R10的3/4。

總結:

RAID 50提供了接近RAID 10性能、可用性以及接近RAID 5成本的特性,具有較好的整體性價比優勢,所以考慮使用RAID 50替換RAID 10把!

本文出自 “@快速暢通@” 博客,請務必保留此出處http://speediness.blog.51cto.com/760841/1783323

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