原文地址:https://support.huawei.com/enterprise/zh/doc/EDOC1000163568/59d2f1cd
RAID(Redundant Array of Independent Disks)是将多块物理硬盘通过RAID控制卡组合成虚拟的单块大容量硬盘使用,从而提供比单个硬盘更高的存储性能、更高的I/O性能及可靠性。
RAID 0
RAID 0又称为条带化(Stripe)或分条(Striping),代表了所有RAID级别中最高的存储性能。RAID 0提高存储性能的原理是把连续的数据分散到多个硬盘上存取。这样,当系统有数据请求时就可以在多个硬盘上并行执行,每个硬盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高硬盘整体读写性能。但由于其没有数据冗余,无法保护数据的安全性,只能适用于I/O速率要求高,但数据安全性要求低的场合。
处理流程
如图1-1所示,系统向三块硬盘组成的逻辑硬盘(RAID 0硬盘组)发出的I/O数据请求被转化为三项操作,其中的每一项操作都对应于一块物理硬盘。
通过建立RAID 0,原先顺序的数据请求被分散到所有的三块硬盘中同时执行。
三块硬盘的并行操作在理论上使同一时间内硬盘读写速度提升了3倍。虽然由于总线带宽等多种因素的影响,实际的提升速率会低于理论值,但是大量数据并行传输与串行传输比较,提速效果显著。

RAID 1
RAID 1又称镜像(Mirror或Mirroring),即每个工作盘都有一个镜像盘,每次写数据时必须同时写入镜像盘,读数据时同时从工作盘和镜像盘读出。当更换故障盘后,数据可以重构,恢复工作盘正确数据。RAID 1可靠性高,但其有效容量减小到总容量一半,因此常用于对容错要求较高的应用场合,如财政、金融等领域。
处理流程
如图1-2所示,系统向两块硬盘组成的逻辑硬盘(RAID 1硬盘组)发出I/O数据请求。
- 向硬盘Drive 0写入数据时,系统会同时把用户写入Drive 0的数据自动复制到Drive 1上。
- 读取数据时,系统同时从Drive 0和Drive 1读取。

RAID 1ADM
MSCC SmartRAID 3152-8i在FW版本4.72后将RAID 1ADM更名为RAID 1Triple。
RAID 1ADM的每个工作盘都有两个镜像盘,每次写数据时必须同时写入镜像盘,读数据时同时从工作盘和镜像盘读出。当更换故障盘后,数据可以重构,恢复工作盘正确数据。RAID 1ADM可靠性比RAID 1高,但其有效容量减小到总容量的三分之一,因此常用于对容错要求较高的应用场合,如财政、金融等领域。
处理流程
如图1-3所示,系统向三块硬盘组成的逻辑硬盘(RAID 1ADM硬盘组)发出I/O数据请求。
- 向硬盘Drive 0写入数据时,系统会同时把用户写入Drive 0的数据自动复制到Drive 1和Drive 2上。
- 读取数据时,系统同时从Drive 0、Drive 1和Drive 2读取。

RAID 5
RAID 5是一种存储性能、数据安全和存储成本兼顾的存储解决方案。为保障存储数据的可靠性,采用循环冗余校验方式,并将校验数据分散存储在RAID的各成员盘上。当RAID的某个成员盘出现故障时,通过其他成员盘上的数据可以重新构建故障硬盘上的数据。RAID 5既适用于大数据量的操作,也适用于各种小数据的事务处理,是一种快速、大容量和容错分布合理的磁盘阵列。
处理流程
如图1-4所示,PA为A0、A1和A2的奇偶校验信息,PB为B0、B1和B2的奇偶校验信息,以此类推。
RAID 5不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到成员盘上,并且奇偶校验信息和相对应的数据分别存储于不同的硬盘上。当RAID 5的一个硬盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息可以恢复被损坏的数据。
RAID 5可以理解为是RAID 0和RAID 1的折中方案:
- RAID 5可以为系统提供数据安全保障,但保障程度要比RAID 1低而硬盘空间利用率要比RAID 1高,存储成本相对较低。
- RAID 5具有较RAID 0略低的数据读写速度,但写性能比写入单个硬盘时要高。

RAID 6
在RAID 5的基础上,RAID 6增加了第二个独立的奇偶校验信息块。两个独立的奇偶系统使用不同的算法,数据的可靠性非常高,即使两块硬盘同时失效也不会影响数据的使用。但RAID 6需要分配给奇偶校验信息更大的硬盘空间,相对于RAID 5有更大的“写损失”,因此“写性能”较差。
处理流程
如图1-5所示,PA为数据块A0、A1、A2的第一个校验信息块,QA为第二个校验信息块;PB为数据块B0、B1、B2的第一个校验信息块,QB为第二个校验信息块,以此类推。
数据块和校验块一起分散存储到RAID 6的各个成员盘上。当任意一个或两个成员硬盘出现故障时,控制卡可以从其他处于正常状态的硬盘上重新恢复或生成丢失的数据而不影响数据的可用性。

RAID 10
RAID 10是将镜像和条带进行两级组合的RAID级别,即RAID 1+RAID 0的组合形式,第一级是RAID 1,第二级是RAID 0。RAID 10是存储性能和数据安全兼顾的方案。它在提供与RAID 1一样的数据安全保障的同时,也提供了与RAID 0近似的存储性能。
处理流程
如图1-6所示,Drive 0和Drive 1组成一个子组0,Drive 2和Drive 3组成一个子组1,子组内的两个硬盘互为镜像。
系统向硬盘发出I/O数据请求时,原先顺序的数据请求按照RAID 0的方式,被分散到两个子组中并行执行,同时通过RAID 1的方式,系统在向硬盘Drive 0写入数据的同时把数据自动复制到硬盘Drive 1上,向硬盘Drive 2写入数据的同时把数据自动复制到硬盘Drive 3上。
图1-6 RAID 10数据存储原理

RAID 10ADM
MSCC SmartRAID 3152-8i在FW版本4.72后将RAID 10ADM更名为RAID 10Triple。
RAID 10ADM是将镜像和条带进行两级组合的RAID级别,即RAID 1ADM+RAID 0的组合形式,第一级是RAID 1ADM,第二级是RAID 0。RAID 10ADM是存储性能和数据安全兼顾的方案。它在提供与RAID 1ADM一样的数据安全保障的同时,也提供了与RAID 0近似的存储性能。
处理流程
如图1-7所示,Drive 0、Drive 1和Drive 2组成一个子组0,Drive 3、Drive 4和Drive 5组成一个子组1,子组内的硬盘互为镜像。
系统向硬盘发出I/O数据请求时,原先顺序的数据请求按照RAID 0的方式,被分散到两个子组中并行执行,同时通过RAID 1ADM的方式,系统在向硬盘Drive 0写入数据的同时把数据自动复制到硬盘Drive 1和Drive 2上,向硬盘Drive 3写入数据的同时把数据自动复制到硬盘Drive 4和Drive 5上。

RAID 1E
RAID 1E为RAID 1的增强版,工作原理与RAID 1类似。RAID 1E的数据条带及数据备份贯穿在逻辑盘中所有的硬盘当中。跟RAID 1类似,数据是镜像的,逻辑盘的容量是硬盘总容量的一半,可提供数据冗余功能及较高的性能。然而,RAID 1E允许使用更多的物理硬盘,至少由三个硬盘组成。
处理流程
如图1-8所示,系统向三块硬盘组成的逻辑硬盘(RAID 1E硬盘组)发出I/O数据请求。条带数据均匀分布在3个硬盘中,任意一个条带数据都在其他硬盘中有自己的备份。此时,如果有单个硬盘故障,不会造成数据丢失。

RAID 50
RAID 50被称为镜像阵列条带,即RAID 5+RAID 0的组合形式。像RAID 0一样,数据被分区成条带,在同一时间内向多块硬盘写入;像RAID 5一样,也是以数据的校验位来保证数据的安全,且校验条带均匀分布在各个硬盘上。
处理流程
如图1-9所示,PA为A0、A1和A2的奇偶校验信息,PB为B0、B1和B2的奇偶校验信息,以此类推。
RAID 50是RAID 5与RAID 0两种技术的结合,一个RAID 50由多个RAID 5子组组成,数据的存储访问以RAID 0的形式分布在各个RAID 5子组上。依靠RAID 5提供的冗余功能,在子组内部任意一个硬盘故障时,阵列均可正常工作并恢复出故障硬盘的信息。同样,故障硬盘的更换不会影响业务的正常进行。因此,RAID 50可以容忍多个子组同时单盘故障,这是单纯RAID 5技术无法做到的。同时,由于数据分布在多个子组上,阵列可以提供更加优秀的读写性能。

RAID 60
RAID 60同RAID 50类似,数据采用镜像阵列条带分布方式,即RAID 6 + RAID 0的组合形式。像RAID 0一样,数据被分区成条带,在同一时间内向多块硬盘写入;像RAID 6一样,以两个数据校验模块来保证数据的安全,且校验条带均匀分布在各个硬盘上。
处理流程
如图1-10所示,PA为A0、A1和A2的校验信息1,QA为A0、A1和A2的校验信息2,PB为B0、B1和B2的校验信息1,QB为B0、B1和B2的校验信息2,以此类推。
RAID 60是RAID 6与RAID 0两种技术的结合,一个RAID 60由多个RAID 6子组组成,数据的存储访问以RAID 0的形式分布在各个RAID 6子组上。依靠RAID 6提供的冗余功能,在子组内部任意两个硬盘故障,阵列均可正常工作并恢复出故障硬盘的信息。同样,故障硬盘的更换不会影响业务的正常进行。
图1-10 RAID 60数据存储原理

RAID级别比较
各级别RAID的性能及硬盘利用率如表2-1。
表2-1 RAID级别比较
| RAID级别 | 可靠性 | 读性能 | 写性能 | 硬盘利用率 |
|---|---|---|---|---|
| RAID 0 | 低 | 高 | 高 | 100% |
| RAID 1 | 高 | 高 | 中 | 50% |
| RAID 1ADM/Triple | 高 | 高 | 中 | 33% |
| RAID 5 | 中 | 高 | 中 | (N-1)/N |
| RAID 6 | 中 | 高 | 中 | (N-2)/N |
| RAID 10 | 高 | 高 | 中 | 50% |
| RAID 1E | 高 | 中 | 中 | 50% |
| RAID 10ADM/Triple | 高 | 高 | 中 | 33% |
| RAID 50 | 高 | 高 | 较高 | (N-M)/N |
| RAID 60 | 高 | 高 | 较高 | (N-M*2)/N |
| 注:N为RAID成员盘的个数,M为RAID的子组数。 | ||||

Comment