1 RAID0
特点:
■ 采用数据划分
■ 无冗余
■ 无校验
■ 无冗余
■ 无校验
2 RAID1
■ 每个磁盘都一个对应的完全镜像(mirror)磁盘
3 RAID5
■ 采用数据划分■ 奇偶校验,最少3个磁盘
■ 同时,只能允许一个磁盘出故障
奇偶校验算法原理:
RAID5 的算法其实就是数学里面的XOR(即异或)的算法,是这样表示的⊕,
1 ⊕ 1 = 0
1 ⊕ 0 = 1
0 ⊕ 1 = 1
0 ⊕ 0 = 0
多个数字XOR的时候,有两个特点:
A)结果与运算顺序无关。也就是 (a XOR b) XOR c = a XOR (b XOR c)。
B)各个参与运算的数字与结果循环对称。如果 a XOR b XOR c = d,那么a = b XOR c XOR d;b = a XOR c XOR d;c = a XOR b XOR d。
磁盘阵列中的RAID5之所以能够容错,就是利用了XOR运算的这些特点。上面例子中的a、b、c、d就可以看作是四颗磁盘上的数据,其中三个是应用数据,剩下一个是校验。碰到故障的时候,甭管哪个找不到了,都可以用剩下的三个数字XOR一下算出来。
在实际应用中,阵列控制器一般要先把磁盘分成很多条带(英文叫Stripe),然后再对每组条带做XOR。
所以做RAID5 至少要有三个硬盘, 而实际存储空间的大小 = 最小硬盘的存储大小 * (总的硬盘数 – 1 ),即:(n-1)/n 它容许当中任意一个硬盘出错, 这样可以根据校验位算出另外一个硬盘的数据。
注意:由于需要重新计算校验码,所以每次写操作伴随着2个磁盘块的读操作和2个磁盘块的写操作。
4 RAID10
■ 空间利用率为50%
RAID5 与 RAID10的比较
1) 空间利用率 RAID5 > RAID10
2) 可靠性 RAID5 < RAID10
3) 读性能 RAID5 < RAID10
4) 写性能 RAID5> RAID10
参考:
http://raid5sf.jiaogen.com/2010/05/19/raid5%E7%9A%84%E7%AE%97%E6%B3%95/
http://www.thegeekstuff.com/2010/08/raid-levels-tutorial/