RAID是利用若干硬盘驱动器加上控制器按一定的组合方式组成的一个大容量、快速响应和高可靠的存储子系统。硬盘驱动器的不同组合方式形成了不同级别的RAID阵列。
1.RAID 0——数据分割
RAID 0通过2个以上的硬盘驱动器组成一个磁盘阵列,读入和写出的数据流被分割为大小相同的块或条,然后平均分配给各硬盘驱动器来完成传输。虽然组成RAID的磁盘条(Stripe Block)被显示为同一逻辑磁盘,但实际却由几个硬盘驱动器并行处理,使整个系统的性能大大提高。RAID 0阵列的实际容量为M×n(M为硬盘驱动器的容量,n为硬盘驱动器的数量,下同),磁盘利用率为100%。
RAID 0在所有RAID级别中效率最高,但却是惟一不具有容错性的。由于它将数据分成块存储在不同的硬盘驱动器内,从而极大地增加了数据的安全隐患,且这种隐患随着系统中硬盘驱动器总数量的增多而加大,因为如果其中有一个硬盘驱动器中的数据被破坏,整个数据就不能被正确读出了。显然,系统的可靠性值就是每一个单独硬盘驱动器可靠性的乘积,即R=rn,对于12块相同硬盘驱动器组成的RAID 0阵列,有R=0.9512=54%。
2.RAID 1——磁盘镜像
如果说RAID 0是追求性能而放弃可靠性的话,那么,RAID 1正好相反,它是追求可靠性而放弃性能的一种解决方案。其做法就是通过磁盘镜像使所有在给定硬盘驱动器上写入的数据都被复制到另一个硬盘驱动器上。RAID 1至少由2个硬盘驱动器组成,其实际容量为M×n/2,磁盘利用率为50%。
在RAID 1中,2个硬盘驱动器组成一个镜像对,在一对镜像盘中,如果1个发生错误不会损失任何数据,因为数据可以从镜像盘中恢复。但如果2个硬盘驱动器都发生了错误,数据则将丢失。
2个硬盘驱动器组成的RAID 1阵列其可靠性计算如下:
1个硬盘驱动器出现错误的概率为1-r,2个同时出现错误的概率为(1-r)×(1-r),则有R=1-(1-r)×(1-r)=r(2-r)。
对于n(n为2的倍数)个硬盘驱动器组成的RAID 1阵列,每2个硬盘驱动器组成一组,共有n/2组,则R=(r(2-r))n/2 。
12块相同硬盘驱动器组成的RAID 1阵列,其可靠性为R=(0.95×(2-0.95))12/2= 99%。
3.RAID 0+1——带镜像的数据分割
RAID 0+1结合了前两种方式的优点。它在具有RAID 0的高性能的同时也具有RAID 1的冗余和镜像能力。在该模式下,数据被分割到一个磁盘组,然后被镜像到另一个磁盘组上,从而导致了良好的输入、输出性能和较高的可靠性。RAID 0+1阵列的实际容量为M×n/2,磁盘利用率为50%。RAID 0+1至少由4个硬盘驱动器构成。其主要缺点是价格昂贵。
在RAID 0+1中,如果一个磁盘组的所有硬盘驱动器出现了错误,该磁盘组的数据将会丢失,不过所有数据都可以从镜像磁盘组中恢复。但是,如果剩余的磁盘组(镜像)的任何一个硬盘驱动器在第一个磁盘组数据被恢复之前出现了错误,那么所有的数据都会丢失。
在n(n为2的倍数)个硬盘驱动器组成的RAID 0+1阵列中,将硬盘分成2组,每组n/2个硬盘。类似RAID 1的计算,有R=1-(1-r′)×(1-r′),其中r′为每组的可靠性。类似RAID 0的计算,有r′=rn/2,则 R=1-(1-rn/2)×(1-rn/2)=rn/2 (2- rn/2)。
对于12块相同硬盘驱动器组成的RAID 0+1阵列,R =0.9512/2×(2-0.9512/2 )=93%。
4.RAID 10——镜像分割
RAID 10(或称RAID 1+0)与RAID 0+1不同,它是用硬盘驱动器先组成RAID 1阵列,然后在RAID 1阵列之间再组成RAID 0阵列。RAID 10模式同RAID 0+1模式一样具有良好的数据传输性能,但却比RAID 0+1具有更高的可靠性。RAID 10阵列的实际容量为M×n/2,磁盘利用率为50%。RAID 10也需要至少4个硬盘驱动器构成,因而价格昂贵。
RAID 10的可靠性同RAID 1一样,但由于RAID 10硬盘驱动器之间有数据分割,因而数据传输性能优良。
5.RAID 5——带有奇偶校验分割的数据分割
RAID 5与RAID 3很相似,不同之处在于RAID 5的奇偶校验信息也同数据一样被分割保存到所有的硬盘驱动器,而不是写入一个指定的硬盘驱动器,从而消除了单个奇偶校验硬盘驱动器的瓶颈问题。RAID 5磁盘阵列的性能比RAID 3有所提高,但仍然需要至少3块硬盘驱动器。其实际容量为M×(n-1),磁盘利用率为(n-1)/n 。
由3块硬盘驱动器组成的RAID 5磁盘阵列如图5所示。
与RAID 3一样,在RAID 5阵列中,当一个硬盘驱动器发生错误时,所有的数据仍然是可用的,丢失的数据将从剩余的硬盘驱动器和奇偶校验信息中重新计算得到,但当2个以上的硬盘驱动器同时出现失败,则所有数据将会丢失。
RAID 5的可靠性与RAID 3相同。
各种RAID级别的磁盘阵列性能比较
对于由12块硬盘驱动器组成的不同RAID阵列,其可靠性期望值见附表。
这些可靠性期望值显示了使用镜像的RAID阵列比使用奇偶校验的RAID 阵列更可靠。表现良好的当属RAID 10,一个分割和镜像的混合体,具有在三年内没有任何数据丢失的最高可能性为99%,而RAID 0因为不使用镜像,它丢失数据的可能性最高为46%。当然,在实际应用中,为选择合适的RAID阵列,应综合考虑RAID阵列的可靠性、数据传输性能、组建成本,以及磁盘阵列的用途和应用环境等因素。
6、RAID 6
RAID 6是由一些大型企业提出来的私有RAID级别标准,它的全称叫“Independent Data disks with two independent distributed parity schemes(带有两个独立分布式校验方案的独立数据磁盘)”。这种RAID级别是在RAID 5的基础上发展而成,因此它的工作模式与RAID 5有异曲同工之妙,不同的是RAID 5将校验码写入到一个驱动器里面,而RAID 6将校验码写入到两个驱动器里面,这样就增强了磁盘的容错能力,同时RAID 6阵列中允许出现故障的磁盘也就达到了两个,但相应的阵列磁盘数量最少也要4个。
每个磁盘中都具有两个校验值,而RAID 5里面只能为每一个磁盘提供一个校验值,由于校验值的使用可以达到恢复数据的目的,因此多增加一位校验位,数据恢复的能力就越强。不过在增加一位校验位后,就需要一个比较复杂的控制器来进行控制,同时也使磁盘的写能力降低,并且还需要占用一定的磁盘空间。因此,这种RAID级别应用还比较少,相信随着RAID 6技术的不断完善,RAID 6将得到广泛应用。RAID 6的磁盘数量为N+2个。
讯息时代 美好生活
- END -
高新兴讯美科技股份有限公司
证券代码:837766
联系方式:023-68933588
公司地址:重庆市九龙坡区科园一路5号创新大厦7楼