Raid

“降級”的 RAID 6 陣列和“乾淨”的 RAID 5 陣列有什麼區別?

  • March 2, 2022

假設您有兩個 RAID 陣列,一個有 N 個磁碟,一個有 N+1 個磁碟。具有 N 個磁碟的陣列被格式化為RAID 5並單獨放置,而另一個陣列在其中一個磁碟被移除之前被格式化為RAID 6 。現在兩個陣列都有 N 個磁碟,N-1 個磁碟的可用儲存空間,並且可以在失去一個(更多)磁碟的情況下倖存下來。

除了 RAID 控制器使用的任何元數據之外,這兩個陣列之間是否有任何區別(在數據佈局、性能和可靠性方面)?我是否可以將缺少一個磁碟的 RAID 6 陣列轉換為具有最少“重塑”/“重寫”的預期磁碟的 RAID 5?

我知道 RAID 5 和 RAID 6 中有不同的“策略”/“對齊方式”,但這可能超出了這個問題的範圍。也許應該假設兩個陣列都使用兩個 RAID 級別通用的策略。

除了 RAID 控制器使用的任何元數據之外,這兩個陣列之間是否有任何區別(在數據佈局、性能、可靠性方面)?

是的。RAID5 使用一個旋轉奇偶校驗,而 RAID6 使用兩個。您可能正在視覺化專用奇偶校驗磁碟,但它們實際上是在旋轉。

RAID5 應該相當簡單:

在此處輸入圖像描述

使用 RAID6,想像最後一個磁碟失去:

在此處輸入圖像描述

圖表由維基百科提供

$$ *1 $$ 佈局明顯不同,與完整的 RAID5 陣列相比,降級的 RAID6 需要大量額外的獲取和重新計算以補償失去的磁碟。

例如,不是直接讀取 B3,而是從

$$ B1, B2, Bp, Bq $$需要讀取以重建 B3 - 請注意,這只是暫時的,需要在每次訪問 B3 時完成。另請注意,隨機讀取的“讀取放大”會隨著磁碟數量的增加而增加。對於更長的順序讀取,無論如何都必須讀取其他塊。 預計降級的 RAID6 陣列的性能會更差,具體取決於工作負載以及 RAID 控制器的實施和記憶體。RAID 實現傾向於針對正常操作和穩定性進行優化,因此即使使用大記憶體,降級陣列的性能也可能低於預期。

我可以將缺少一個磁碟的 RAID6 陣列轉換為具有最少“重塑”/“重寫”的磁碟的 RAID5 嗎?

是的,理論上,因為所有數據都可以重建。實際上,這取決於手頭的 RAID 控制器的功能。由於它需要特殊的遷移算法,因此實現的可能性不大。就個人而言,我認為我從未見過該選項,但我也沒有一直在尋找它。

$$ *1 $$您應該注意,有不同的方法可以將數據映射到 RAID 陣列中。上圖顯示了最簡單的、未優化的方案。其他方案將優化特定的工作負載,並且用於順序讀取訪問的 RAID5 方案可能是

A1-A2-A3-Ap
B2-B3-Bp-B1
C3-Cp-C1-C2
Dp-D1-D2-D3

引用自:https://serverfault.com/questions/1095017