4.06 RAID5的数据排列算法:
RAID阵列的数据分布有以下4种算法,分别是左对称、右对称、左非对称、右非对称,而RAID5默认使用左对称的数据分布算法。
Left Asymmetric左非对称 Right Asymmetric右非对称
sda1 sdb1 sdc1 sde1 sda1 sdb1 sdc1 sde1
D0 D1 D2 P P D0 D1 D2
D3 D4 P D5 D3 P D4 D5
D6 P D7 D8 D6 D7 P D8
P D9 D10 D11 D9 D10 D11 P
D12 D13 D14 P P D12 D13 D14
=================================================================
Left Symmetric左对称 Right Symmetric右对称
sda1 sdb1 sdc1 sde1 sda1 sdb1 sdc1 sde1
D0 D1 D2 P P D0 D1 D2
D4 D5 P D3 D5 P D3 D4
D8 P D6 D7 D7 D8 P D6
P D9 D10 D11 D9 D10 D11 P
D12 D13 D14 P P D12 D13 D14
在使用mdadm创建RAID阵列时,可以使用--layout=来指定数据和奇偶校验信息在阵列如何分布存储,此处的有如下4个参数:
Left-asymmetric:对照上面的左非对称算法的数据分布实例,该算法描述的数据分布是,在阵列上从第一个阵列段到最后一个阵列段依次的存入数据块,与此同时,奇偶校验块P也从最后一个阵列段到第一个阵列段依次写入。
Right-asymmetric:数据块在阵列上从第一个阵列段到最后一个阵列段依次的存入数据块,与此同时,奇偶校验块P也从第一个阵列段到最后一个阵列段依次写入。
Left-symmetric:这个是RAID5默认的分布算法,也是对于读请求性能最佳的数据分布机制。奇偶校验信息P从最后一个阵列段到第一个阵列段依次写入。数据块从左向右写,且每行的数据块都先在校验块P后面开始写,直到写满。
Right-symmetric:奇偶校验信息P从第一个阵列段到最后一个阵列段依次写入。数据块从左向右写,且每行的数据块都先在校验块P后面开始写,直到写满。