重要的 RAID 概念
校驗方式用在 RAID 重建中從校驗所保存的信息中重新生成丟失的內容。 RAID 5,RAID 6 基於校驗。
1.條帶化是將切片數據隨機存儲到多個磁盤。它不會在單個磁盤中保存完整的數據。如果我們使用2個磁盤,則每個磁盤存儲我們的一半數據。
2.鏡像被用於 RAID 1 和 RAID 10。鏡像會自動備份數據。在 RAID 1 中,它會保存相同的內容到其他盤上。
3.熱備份只是我們的服務器上的一個備用驅動器,它可以自動更換髮生故障的驅動器。在我們的陣列中,如果任何一個驅動器損壞,熱備份驅動器會自動用於重建 RAID。
4.塊是 RAID 控制器每次讀寫數據時的最小單位,最小 4KB。通過定義塊大小,我們可以增加 I/O 性能。
RAID有不同的級別。在這裏,我們僅列出在真實環境下的使用最多的 RAID 級別。
1.RAID0 = 條帶化
2.RAID1 = 鏡像
3.RAID5 = 單磁盤分佈式奇偶校驗
4.RAID6 = 雙磁盤分佈式奇偶校驗
5.RAID10 = 鏡像 + 條帶。(嵌套RAID)
RAID 在大多數 Linux 發行版上使用名爲 mdadm 的軟件包進行管理。讓我們先對每個 RAID 級別認識一下。
1、RAID 0 / 條帶化
條帶化有很好的性能。在 RAID 0(條帶化)中數據將使用切片的方式被寫入到磁盤。一半的內容放在一個磁盤上,另一半內容將被寫入到另一個磁盤。
假設我們有2個磁盤驅動器,例如,如果我們將數據“TECMINT”寫到邏輯卷中,“T”將被保存在第一盤中,“E”將保存在第二盤,'C'將被保存在第一盤,“M”將保存在第二盤,它會一直繼續此循環過程。(LCTT 譯註:實際上不可能按字節切片,是按數據塊切片的。)
在這種情況下,如果驅動器中的任何一個發生故障,我們就會丟失數據,因爲一個盤中只有一半的數據,不能用於重建 RAID。不過,當比較寫入速度和性能時,RAID 0 是非常好的。創建 RAID 0(條帶化)至少需要2個磁盤。如果你的數據是非常寶貴的,那麼不要使用此 RAID 級別。
高性能。
RAID 0 中容量零損失。
零容錯。
寫和讀有很高的性能。
2、RAID 1 / 鏡像化
鏡像也有不錯的性能。鏡像可以對我們的數據做一份相同的副本。假設我們有兩個2TB的硬盤驅動器,我們總共有4TB,但在鏡像中,但是放在 RAID 控制器後面的驅動器形成了一個邏輯驅動器,我們只能看到這個邏輯驅動器有2TB。
當我們保存數據時,它將同時寫入這兩個2TB驅動器中。創建 RAID 1(鏡像化)最少需要兩個驅動器。如果發生磁盤故障,我們可以通過更換一個新的磁盤恢復 RAID 。如果在 RAID 1 中任何一個磁盤發生故障,我們可以從另一個磁盤中獲取相同的數據,因爲另外的磁盤中也有相同的數據。所以是零數據丟失。
良好的性能。
總容量丟失一半可用空間。
完全容錯。
重建會更快。
寫性能變慢。
讀性能變好。
能用於操作系統和小規模的數據庫。
3、RAID 5 / 分佈式奇偶校驗
RAID 5 多用於企業級。 RAID 5 的以分佈式奇偶校驗的方式工作。奇偶校驗信息將被用於重建數據。它從剩下的正常驅動器上的信息來重建。在驅動器發生故障時,這可以保護我們的數據。
假設我們有4個驅動器,如果一個驅動器發生故障而後我們更換髮生故障的驅動器後,我們可以從奇偶校驗中重建數據到更換的驅動器上。奇偶校驗信息存儲在所有的4個驅動器上,如果我們有4個 1TB 的驅動器。奇偶校驗信息將被存儲在每個驅動器的256G中,而其它768GB是用戶自己使用的。單個驅動器故障後,RAID 5 依舊正常工作,如果驅動器損壞個數超過1個會導致數據的丟失。
性能卓越
讀速度將非常好。
寫速度處於平均水準,如果我們不使用硬件 RAID 控制器,寫速度緩慢。
從所有驅動器的奇偶校驗信息中重建。
完全容錯。
1個磁盤空間將用於奇偶校驗。
可以被用在文件服務器,Web服務器,非常重要的備份中。
4、RAID 6 雙分佈式奇偶校驗磁盤
RAID 6 和 RAID 5 相似但它有兩個分佈式奇偶校驗。大多用在大數量的陣列中。我們最少需要4個驅動器,即使有2個驅動器發生故障,我們依然可以更換新的驅動器後重建數據。
它比 RAID 5 慢,因爲它將數據同時寫到4個驅動器上。當我們使用硬件 RAID 控制器時速度就處於平均水準。如果我們有6個的1TB驅動器,4個驅動器將用於數據保存,2個驅動器將用於校驗。
性能不佳。
讀的性能很好。
如果我們不使用硬件 RAID 控制器寫的性能會很差。
從兩個奇偶校驗驅動器上重建。
完全容錯。
2個磁盤空間將用於奇偶校驗。
可用於大型陣列。
用於備份和視頻流中,用於大規模。
5、RAID 10 / 鏡像+條帶
RAID 10 可以被稱爲1 + 0或0 +1。它將做鏡像+條帶兩個工作。在 RAID 10 中首先做鏡像然後做條帶。在 RAID 01 上首先做條帶,然後做鏡像。RAID 10 比 01 好。
假設,我們有4個驅動器。當我邏輯捲上寫數據時,它會使用鏡像和條帶的方式將數據保存到4個驅動器上。
如果我在 RAID 10 上寫入數據“TECMINT”,數據將使用如下方式保存。首先將“T”同時寫入兩個磁盤,“E”也將同時寫入另外兩個磁盤,所有數據都寫入兩塊磁盤。這樣可以將每個數據複製到另外的磁盤。
同時它將使用 RAID 0 方式寫入數據,遵循將“T”寫入第一組盤,“E”寫入第二組盤。再次將“C”寫入第一組盤,“M”到第二組盤。
良好的讀寫性能。
總容量丟失一半的可用空間。
容錯。
從副本數據中快速重建。
由於其高性能和高可用性,常被用於數據庫的存儲中。
結論
在這篇文章中,我們已經瞭解了什麼是 RAID 和在實際環境大多采用哪個級別的 RAID。希望你已經學會了上面所寫的。對於 RAID 的構建必須瞭解有關 RAID 的基本知識。以上內容可以基本滿足你對 RAID 的瞭解。