独立冗余磁盘阵列RAID(Redundant Array of Independent Disk)
多个磁盘通过冗余实现可靠性
Inexpensive->Indenpendent(独立)
通过冗余改善可靠性
假设单个磁盘出错的概率为a,则n个磁盘出错的概率为a/n。如果只存储数据的一个拷贝,只要n个磁盘中的一个磁盘出错,数据就出现错误。因此n个磁盘的出错率大于1个磁盘的出错率。
可靠性问题的解决方法是引入冗余
通过并行处理改善性能
数据分散(Striping):通过在多个磁盘上分散数据,能够改善传输率
位(字节)级分散
块级分散
交叉存取Interleaved
RAID is arranged into 0-6 different levels.
RAID 0:non-redundant striping
提供并行交叉存取。
优点:实现高效的传输,实现高速的I/O请求
缺点:无冗余校验功能,致使磁盘系统的可靠性并不是很高。只要阵列中有一个磁盘损坏,便会造成不可弥补的数据丢失。
RAID 1:mirrored disks
具有磁盘镜像功能。
例如,,当磁盘阵列中具有8个盘时,可利用其中4个作为数据盘,另外4个作为镜像盘,在每次访问磁盘时,可利用并行读、写特性,将数据分块同时写入主盘和镜像盘。
优点:可靠性好,且从故障中恢复很简单
缺点:磁盘容量的利用率只有50%
RAID 2:memory-style error-correcting codes
汉明校验码校验按字节或位striping
RAID 3:bit-interleaved parity
奇偶校验,按字节或位striping
RAID 4:block-interleaved parity
按块striping
RAID 5:block-interleaved distributed parity
按块striping,纠错码分散放在硬盘(不单独设置校验盘,校验信息分散在数据盘)
RAID 6:P+Q Redundancy
两种校验,P+Q校验