對于一個數據的寫入,我們假設在第五個磁盤上寫入的數據為1111,如下圖所示。那么整個RAID-5需要完成寫入的過程分為以下幾步:

1.讀取原數據0110,然后與新的數據1111做XOR操作: 0110 XOR 1111 = 1001

2.讀取原有的校驗位0010

3.用第一步算出的數值與原校驗位再做一次XOR操作: 0010 XOR 1001 = 1011

4.然后將1111新數據寫入到數據磁盤,將第三步計算出來的新的校驗位寫入校驗盤。

由上述幾個步驟可見,對于任何一次寫入,在存儲端,需要分別進行兩次讀+兩次寫,所以說RAID-5的Write Penalty的值是4。
 
不同RAID級別的Write Penalty:

下表列出了各種RAID級別的Write Penalty值:

RAID-0:直接的條帶,數據每次寫入對應物理磁盤上的一次寫入

RAID-1和10:RAID-1 和RAID-10的寫懲罰很簡單理解,因為數據的鏡像存在的,所以一次寫入會有兩次。

RAID-5:RAID-5由于要計算校驗位的機制存在,需要讀數據、讀校驗位、寫數據、寫校驗位四個步驟,所以RAID-5的寫懲罰值是4。

RAID-6:RAID-6由于有兩個校驗位的存在,與RAID-5相比,需要讀取兩次校驗位和寫入兩次校驗位,所以RAID-6的寫懲罰值是6。

計算IOPS:

根據上文的描述,在實際存儲方案設計的過程中,計算實際可用IOPS的過程中必須納入RAID的寫懲罰計算。計算的公式如下:

物理磁盤總的IOPS = 物理磁盤的IOPS × 磁盤數目

可用的IOPS = (物理磁盤總的IOPS × 寫百分比 ÷ RAID寫懲罰) + (物理磁盤總的IOPS × 讀百分比)

假設組成RAID-5的物理磁盤總共可以提供500 IOPS,使用該存儲的應用程序讀寫比例是50%/50%,那么對于前端主機而言,實際可用的IOPS是:

(500 ×50% ÷ 4)+ ( 500 * 50%) = 312.5 IOPS

本文作者為EMC中文技術社區(https://community.emc.com/go/chinese)技術版主。

未經允許不得轉載:存儲在線-存儲專業媒體 » 淺談RAID寫懲罰(Write Penalty)與IOPS計算
分享到

fenglin

相關推薦

精品国产午夜肉伦伦影院,双性老师灌满浓jing上课h,天天做天天爱夜夜爽,攵女乱h边做边走