1.3.4 磁盘阵列技术

2025-06-14 16:03:07 更新

(一)磁盘阵列

是由多台磁盘存储器组成的一个快速、大容量、高可靠的外存子系统。

(1)镜像(Mirroring)

将数据复制到多个磁盘,提高可靠性和可读性。

(2)数据条带(Data Stripping)

将数据分片保存在多个不同的磁盘,提升I/O性能。

(3)数据校验(Data parity)

利用冗余数据(海明码、异或操作等)进行数据错误检测和修复。

在写入数据同时进行校验计算,并将得到的校验数据存储在 RAID 成员磁盘中。

当其中一部分数据出错时,就可以对剩余数据和校验数据进行反校验计算重建丢失的数据。

(二)海明校验码

由理查德·海明提出,不仅能检测错误,还能给出错误位置并自动纠正。实质上是一种多重奇偶校验。

基本思想:将有效信息按照某种规律分成若干组,对每一个组作奇偶测试并安排一个校验位,从而能提供多位检错信息,以定位错误点并纠正。

(三)异或校验

通过异或逻辑运算产生,将一个有效信息与一个给定初始值进行异或运算,得到校验信息。如果有效信息出现错误,通过校验信息与初始值的异或运算能还原正确的有效信息。

(四)廉价冗余磁盘阵列(Redundant Array of Independent Disk,RAID)

标准 RAID 等级


RAID级别

说明

场景

1

RAID-0

将数据分散存储在所有磁盘中,读写性能是单个磁盘性能的n倍。

无校验无冗余,存储利用率100%,数据损坏后无法恢复。

对性能要求严格但对数据安全性和可靠性不高,如视频、音频存储、临时数据缓存空间等。

2

RAID-1

称为镜像,将数据完全一致地分别写到工作磁盘和镜像磁盘。存储利用率50%

对顺序读写性能要求高以及对数据保护极为重视,如对邮件系统的数据保护。

3

RAID-2

称为纠错海明码磁盘阵列,采用海明码进行错误检测。

冗余开销大,数据重建非常耗时。

实际中很少应用,没有形成商业产品,目前主流存储磁盘阵列均不提供支持。

4

RAID-3

只用一个校验盘。

至少需要三块磁盘,校验值写入校验盘中。

用大容量数据的顺序访问应用,如影像处理、流媒体服务等。

5

RAID-4

只用一个检验盘。

单一校验盘是瓶颈,写性能差,数据盘越多越差。

在实际应用中很少见,主流存储产品也很少使用。

6

RAID-5

是对RAID-4改进,不设置专门检验盘。

同一磁盘既记录数据,也记录检验信息,解决了多个磁盘争用一台检验盘的问题

为 RAID0 和 RAID1 的折中方案,目前综合性能最佳。可以满足大部分存储应用需求

7

RAID-6

扩展了RAID5,引入双重校验,在两个磁盘出现故障时仍能正常工作。

成本较高,写性能较差,设计和实施复杂。

很少得到实际应用,主要用于对数据安全等级要求非常高的场合。是替代 RAID10 方案的经济性选择。

8

RAID-10

RAID1+0,兼备RAID0和RAID1的优点,先做镜像再作条带化,是对虚拟磁盘实现镜像。存储利用率50%

非常适合对性能和数据安全性都有较高要求的应用场景