- 论坛徽章:
- 0
|
在I/O系统中,磁盘阵列指来自一个或多个磁盘系统的磁盘及其阵列控制器。RAID是磁盘阵列的一种特殊形式,其中部分存储容量保存了用户数据的校验信息。校验信息保证了当个别阵列磁盘成员或访问路径故障时,可以通过读取正常工作的磁盘成员上的内容来重新构造出用户数据,从而提高数据的可用性。在RAID中,将基本的数据块按照Block(块),分条(Stripe),划分(Extent)的逻辑层次组织起来的。
通常RAID用RAID Level 来表示数据保护和映射的方法。最初提出时,只有5级,后经过不断的完善,同RAB(RAID ASSOCIATE BOARD)审定,现基本分为6级,表示为RAID0~6。
RAID0(Data Striping Array Without Parity)将数据分割交叉存储在所有的磁盘成员上,亦即所谓的round-robin方式,所有的磁盘成员都是数据盘,无冗余数据,因而没有容错功能。数据分割的粒度是位、字节、块。广泛应用于要求数据传输速度快、存储容量大,而对数据的可靠性要求不高的某些超级计算环境中。
RAID1(Disk Mirroring)镜像磁盘阵列。采用和数据盘相同数目的磁盘作为镜像盘,利用完全备份的方式来提高数据的可靠性。如果数据盘失效,可以用镜像盘提供服务,并由镜像盘的数据重新构造出数据盘上的数据。
RAID2(Memory-Style ECC)以位为单位进行数据的分割与重构,采用海明码容错的磁盘阵列。模仿主存中的容错技术,使用海明码来恢复失效数据,冗余盘的数目是磁盘阵列系统总盘数的对数,随着磁盘阵列系统规模的增加,磁盘的利用率也会相应的提高。RAID2的冗余信息量很大,代价昂贵,一般很少使用。
RAID3(Bit-Interleaved Parity)位交叉奇偶校验磁盘阵列,以位为粒度进行的分割与重构,采用奇偶编码,将数据盘上的所有数据经“异或”后产生的校验值存放在校验盘上,当任何一个磁盘控制器发现磁盘失效时,均可以通过计算其它盘上的奇偶信息来恢复丢失的数据。与RAID2相比,减少了校验盘的数目。数据是按位交叉的,计算和写入校验位花费时间,而读出涉及数据盘,故读写操作比写操作快。小规模数据请求浪费存储空间和增加系统开销,但大块数据请求则有良好的I/O带宽。
RAID4(Block-Interleaved Parity)块交叉奇偶校验磁盘阵列。它与RAID3惟一不同的是数据分块的粒度,这种在块一级上进行数据交叉的分布方法提高了读率,但对写请求因需修改校验数据而使速率降低,特别是写小块数据。因为写小块数据需要进行读旧数据、读旧校验信息、写新数据、写新校验信息四次I/O操作,即两次“读­-修改-写(RWM)”操作。由于所有的写操作都需要访问校验盘,校验盘便成为“瓶颈”。
RAID5(Block-Interleaved Distributed Parity)块交叉和校验信息旋转分布磁盘阵列,RAID4的显著缺点是校验盘成为“瓶颈”,RAID5不将校验信息保存在固定的校验盘上,而将校验信息分布到所有的盘上,因为所有的盘都能参与读写,故读出时的带宽有所提高。但“小写”问题因需要RWM操作而性能差。
RAID6(P + Q Redundancy)双校验磁盘阵列,采用两种不同的方法计算校验数据。用两个校验盘支持数据磁盘,第一个校验般支持一种算法,而另一个盘使用另一种校验算法,使用两种算法称为P + Q校验,这样,它能支持两个磁盘的失败。在结构和工作方式上与RAID5相似。
以上介绍了RAID系统的基本层次。实际的实现中,还可以有各种层次的组合形式,如RAID0+1,RAID0+5等。
RAID实际存储容量计算:
RAID 级别 实际容量
RAID0 N * DiskSize
RAID1 DiskSize
RAID4 (N - 1) * DiskSize
RAID5 (N - 1) * DiskSize
RAID10 NumberoOfMirrors * DisksSize
RAID50 (N - ParityDisks) * DiskSize
RAID级别比较:
RAID级别 冗余能力 分条长度 读写性能 成本
RAID0 0 2~N 读写性能最好,优于单个 成本低,没有额
磁盘 外开销
RAID1 1 1 写性能较差,读性能较好 成本很高(50%)
RAID3 1 3~N 读写性能优于单个磁盘 一个校验盘
RAID4 1 3~N 读性能优于单个磁盘 一个校验盘
写操作受校验盘瓶颈限制
RAID5 1 3~N 读写性能优于单个磁盘 一个校验盘
写操作优于RAID4
RAID6 2 3~N 多重校验和复杂算法影响 两个或多个
系统性能 校验盘
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/18871/showart_110956.html |
|