常用的RAID级别有以下几种:NRAID,JBOD,RAID0,RAID1,RAID0+1,RAID3,RAID5等




MegaRAID BIOS 重建raid_存储系统


RAID0也称为条带化(stripe),将数据分成一定的大小顺序的写道阵列的磁盘里,RAID0可以并行的执行读写操作,可以充分利用总线的带宽,理论上讲,一个由N个磁盘组成的RAID0系统,它的读写性能将是单个磁盘读取性能的N倍。且磁盘空间的存储效率最大(100%)RAID0有一个明显的缺点:不提供数据冗余保护,一旦数据损坏,将无法恢复。但是它却提供了卓越的吞吐性能,因为读写数据是在一组磁盘中的每个磁盘上同时处理的,吞吐性能远远超过单个磁盘的读写。

RAID1称为镜像(mirror),它将数据完全一致的分别写到工作磁盘和镜像磁盘,因此它的磁盘空间利用率为50%,在数据写入时时间会有影响,但是读的时候没有任何影响,RAID0提供了最佳的数据保护,一旦工作磁盘发生故障,系统自动从镜像磁盘读取数据,不会影响用户工作。每次写操作都将分别写两份到数据盘和校验盘上,每对数据盘和校验盘成为镜像磁盘组。也可使用并发的方式来读数据时,提高吞吐性能。如果镜像磁盘组中某个磁盘出错,则数据可以从另外一块磁盘获得,而不会影响系统的性能,然后,使用一块备用磁盘将健康磁盘中的数据复制出来然后这两块磁盘又组成新的镜像组。

RAID1/0,即RAID1 与RAID0 的结合,既做镜像又做条带化,数据先镜像再做条带化。这样数据存储既保证了可靠性,又极大地提高了吞吐性能。

RAID-0/1 也是RAID0 与RAID1 的结合,但它是对条带化后的数据进行镜像。但与RAID10 不同,一个磁盘的丢失等同于整个镜像条带的丢失,所以一旦镜像盘失败,则存储系统成为一个RAID-0 系统(即只有条带化)。

RAID-5 是将数据校验循环分散到各个磁盘中,它像RAID-0 一样将数据条带化分散写到一组磁盘中,但同时它生成校验数据做为冗余和容错使用。校验磁盘包含了所有条带的数据的校验信息。RAID-5 将校验信息轮流地写入条带磁盘组的各个磁盘中,即每个磁盘上既有数据信息又同时有校验信息,RAID-5 的性能得益于数据的条带化,但是某个磁盘的失败却将引起整个系统的下降,这是因为系统将在承担读写任务的同时,重新构建和计算出失败磁盘上的数据,此时要使用备用磁盘对失败磁盘的数据重建恢复整个系统的健康。

下本文以四块磁盘为例,介绍RAID1+0和RAID0+1的区别。

RAID1+0,即先用两块磁盘作RAID0,然后对于这个整体再作RAID1,如图所示:


MegaRAID BIOS 重建raid_数据盘_02


RAID0+1,也叫RAID10,即先对两块磁盘分别作RAID1,然后再将两部分作RAID0,如图所示:


MegaRAID BIOS 重建raid_数据盘_03


RAID0+1要比RAID1+0的可靠性高很多,以文中所述的两种情况为例,当有两块磁盘同时发生故障的时候,RAID0+1有1/3的可能性导致数据丢失,而RAID1+0则有2/3的可能性导致数据不可用。