RAID技术简介
RAID独立冗余磁盘阵列最初叫做廉价冗余磁盘阵列(Redundant Array of Inexpensive Disks)
RAID是通过磁盘阵列与数据条块化方法相结合,以提高数据可用率的一种结构。IBM早于1970年就开始研究此项技术。RAID 可分为RAID级别1到RAID级别6, 通常称为:RAID 0, RAID 1, RAID 2, RAID 3,RAID 4, RAID 5,RAID6。每一个RAID级别都有自己的强项和弱项。 "奇偶校验"定义为用户数据的冗余信息, 当硬盘失效时,可以重新产生数据。
RAID 0: RAID 0 并不是真正的RAID结构, 没有数据冗余。 RAID 0 连续地分割数据并并行地读/写于多个磁盘上。 因此具有很高的数据传输率。 但RAID 0在提高性能的同时,并没有提供数据可靠性,如果一个磁盘失效,将影响整个数据。因此RAID 0 不可应用于需要数据高可用性的关键应用。
RAID 1: RAID 1通过数据镜像实现数据冗余,在两对分离的磁盘上产生互为备份的数据。 RAID 1可以提高读的性能, 当原始数据繁忙时,可直接从镜像拷贝中读取数据。RAID 1是磁盘阵列中费用最高的, 但提供了最高的数据可用率。 当一个磁盘失效,系统可以自动地交换到镜像磁盘上, 而不需要重组失效的数据。
RAID 2: 从概念上讲, RAID 2 同RAID 3类似, 两者都是将数据条块化分布于不同的硬盘上, 条块单位为位或字节。然而RAID 2 使用称为"加重平均纠错码"的编码技术来提供错误检查及恢复。这种编码技术需要多个磁盘存放检查及恢复信息, 使得RAID 2技术实施更复杂。因此,在商业环境中很少使用.
RAID 3: 不同于RAID 2, RAID 3使用单块磁盘存放奇偶校验信息。 如果一块磁盘失效, 奇偶盘及其他数据盘可以重新产生数据。如果奇偶盘失效,则不影响数据使用。RAID 3对于大量的连续数据可提供很好的传输率, 但对于随机数据, 奇偶盘会成为写操作的瓶颈。
RAID 4: 同RAID 2, RAID 3一样, RAID 4, RAID 5也同样将数据条块化并分布于不同的磁盘上, 但条块单位为块或记录。 RAID 4使用一块磁盘作为奇偶校验盘, 每次写操作都需要访问奇偶盘, 成为写操作的瓶颈. 在商业应用中很少使用。
RAID 5: RAID 5没有单独指定的奇偶盘, 而是交叉地存取数据及奇偶校验信息于所有磁盘上。在RAID5 上, 读/写指针可同时对阵列设备进行操作, 提供了更高的数据流量。RAID 5更适合于小数据块, 随机读写的数据.RAID 3 与RAID 5相比, 重要的区别在于RAID 3每进行一次数据传输,需涉及到所有的阵列盘。而对于RAID 5来说, 大部分数据传输只对一块磁盘操作, 可进行并行操作。在RAID 5中有"写损失", 即每一次写操作,将产生四个实际的读/写操作, 其中两次读旧的数据及奇偶信息, 两次写新的数据及奇偶信息。
RAID 6: RAID 6 与RAID 5相比,增加了第二个独立的奇偶校验信息块。两个独立的奇偶系统使用不同的算法, 数据的可靠性非常高。即使两块磁盘同时失效,也不会影响数据的使用。但需要分配给奇偶校验信息更大的磁盘空间, 相对于RAID 5有更大的"写损失"。RAID 6 的写性能非常差, 较差的性能和复杂的实施使得RAID 6很少使用
另类RAID级别简介
在以前的文章里,我们已经介绍过RAID 0、1、3、5、7、10、30、50等、除了这些比较常用的RAID级别,还有一些虽有定义,但较少应用的RAID级别,这里我们也做一下简单的介绍。
RAID 2,带海明码校验磁盘阵列
RAID2是为大型机和超级计算机开发的。磁盘驱动器组中的第一个、第二个、第四个……第2的n次幂个磁盘驱动器是专门的校验盘,用于校验和纠错,例如七个磁盘驱动器的RAID2,第一、二、四个磁盘驱动器是纠错盘,其余的用于存放数据。使用的磁盘驱动器越多,校验盘在其中占的百分比越少。RAID2对大数据量的输入输出有很高的性能,但少量数据的输入输出时性能不好。RAID2很少实际使用。
由于海明码的特点,它可以在数据发生错误的情况下将错误校正,以保证输出的正确。它的数据传送速率相当高,如果希望达到比较理想的速度,那最好提高保存校验码ECC码的硬盘,对于控制器的设计来说,它又比RAID3,4或5要简单。但是利用海明码校验必须要付出数据冗余的代价。
RAID4:带奇偶校验码的独立磁盘结构
RAID4和RAID3很相似,不同的是RAID4对数据的访问是按数据块进行的,也就是按磁盘进行的,每次是一个盘。 RAID3是一次一横条,而RAID4一次一竖条。所以RAID3常须访问阵列中所有的硬盘驱动器,而RAID4只须访问有用的硬盘驱动器。这样读数据的速度大大提高了,但在写数据方面,需将从数据硬盘驱动器和校验硬盘驱动器中恢复出的旧数据与新数据通过异或运算,然后再将更新后的数据和检验位写入硬盘驱动器,所以处理时间较RAID3长。
RAID6:带有两种分布存储的奇偶校验码的独立磁盘结构
几乎没有进行商用。它使用一种分配在不同的驱动器上的第二种奇偶方案,扩展了RAID 5。它能承受多个驱动器同时出现故障,但是,性能尤其是写操作却很差,而且,系统需要一个极为复杂的控制器。当然由于引入了第二种奇偶校验值,所以需要N+2个磁盘,同时对控制器的设计变得十分复杂,用于计算奇偶校验值和验证数据正确性所花费的时间比较多,造成了不必须的负载。
RAID53:高效数据传送磁盘结构
RAID53结构的实施同Level 0数据条阵列,其中,每一段都是一个RAID 3阵列。它的冗余与容错能力同RAID 3。这对需要具有高数据传输率的RAID 3配置的系统有益,但是它价格昂贵、效率偏低。