首页 > 代码库 > RAID阵列
RAID阵列
RAID阵列
一、 RAID简介
RAID全称为Redundant Array of Disks,是“独立磁盘冗余阵列”(最初为“廉价磁盘冗余阵列”)的缩略语。1987年由Patterson,Gibson和Katz在加州大学伯克利分院的一篇文章中定义。RAID阵列技术允许将一系列磁盘分组,以实现为数据保护而必需的数据冗余,以及为提高读写性能而形成的数据条带分布。RAID最初用于高端服务器市场,不过随着计算机技术的快速发展,RAID技术已经渗透到计算机遍布的各个领域。如今,在家用电脑主板中,RAID控制芯片也随处可见。
一般,RAID系统可以存在于各种接口界面,就我们现时来说,PATA、SATA以及SCSI均有相应的硬盘可以组成RAID。随着Intel 865/875系列芯片组的发布,家用市场的硬盘接口开始转向SATA,而RAID方式也将从PATA过渡到SATA。
二、 RAID等级介绍
1、 Raid0
分割数据可以将I/O负载平均分配到所有的驱动器中。由于驱动器可以同时写或读,使得性能显著提高。但是,它却没有数据保护能力。如果一个磁盘出现故障,那么数据就会全盘丢失。因此,RAID 0不适用于关键任务环境,但是,它却非常适合于视频、图象的制作和编辑。
2、 Raid1
RAID 1也被称为镜象,因为一个磁盘上的数据被完全复制到另一个磁盘上。如果一个磁盘的数据发生错误,或者硬盘出现了坏道,那么另一个硬盘可以补救回磁盘故障而造成的数据损失和系统中断。另外,RAID 1还可以实现双工——即可以复制整个控制器,这样在磁盘故障或控制器故障发生时,您的数据都可以得到保护。镜象和双工的缺点是需要多出一倍数量的驱动器来复制数据,但系统的读写性能并不会由此而提高,这可能是一笔不小的开支。RAID l可以由软件或硬件方式实现。
3、 Raid2
由于RAID 2的特殊性,只要我们使用的磁盘驱动器越多,校验盘在其中占的百分比越少。如果希望达到比较理想的速度和较好的磁盘利用率,那最好可以增加保存校验码ECC码的硬盘,但是这就要付出更多硬盘的购买成本,来确保数据冗余。对于控制器的设计来说,它比下面所说的RAID 3,4或5要简单。
4、 Raid3
RAID 3,即带有专用奇偶位(parity)的条带。每个条带片上都有相当于一“块”那么大的空间用来存储冗余信息,即奇偶位。奇偶位是编码信息,如果某个磁盘的数据有误,或者磁盘发生故障,就可以用它来恢复数据。在数据密集型环境或单一用户环境中,组建RAID 3对访问较长的连续记录有利,不过同RAID 2一样,访问较短记录时,性能会有所下降。
5、 Raid4
RAID 4是带奇偶校验码的独立磁盘结构。它和RAID 3很相似,不同的是RAID 4对数据的访问是按数据块进行的。RAID 3是一次一横条,而RAID 4一次一竖条。所以RAID 3常须访问阵列中所有的硬盘驱动器,而RAID 4只须访问有用的硬盘驱动器。这样读数据的速度大大提高了,但在写数据方面,需将从数据硬盘驱动器和校验硬盘驱动器中恢复出的旧数据与新数据校验,然后再将更新后的数据和检验位写入硬盘驱动器,所以处理时间较RAID 3长。
6、 Raid5
RAID 5也被叫做带分布式奇偶位的条带。每个条带上都有相当于一个“块”那么大的地方被用来存放奇偶位。与RAID 3不同的是,RAID 5把奇偶位信息也分布在所有的磁盘上,而并非一个磁盘上,大大减轻了奇偶校验盘的负担。尽管有一些容量上的损失,RAID 5却能提供较为完美的整体性能,因而也是被广泛应用的一种磁盘阵列方案。它适合于输入/输出密集、高读/写比率的应用程序,如事务处理等。
7、 Raid6
RAID 6是带有两种分布存储的奇偶校验码的独立磁盘结构。它使用了分配在不同的磁盘上的第二种奇偶校验来实现增强型的RAID 5。它能承受多个驱动器同时出现故障,但是,用于计算奇偶校验值和验证数据正确性所花费的时间比较多,造成了系统的负载较重,大大降低整体磁盘性能,而且,系统需要一个极为复杂的控制器。当然,由于引入了第二种奇偶校验值,我们所以需要的是N+2个磁盘。
8、Raid7
RAID 7自身带有智能化实时操作系统和用于存储管理的软件工具,可完全独立于主机运行,不占用主机CPU资源。RAID 7存储计算机操作系统(Storage Computer Operating System)是一套实时事件驱动操作系统,主要用来进行系统初始化和安排RAID 7磁盘阵列的所有数据传输,并把它们转换到相应的物理存储驱动器上。通过Storage Computer Operating System来设定和控制读写速度,可使主机I/O传递性能达到最佳。如果一个磁盘出现故障,还可自动执行恢复操作,并可管理备份磁盘的重建过程。
9、Raid10
RAID 10,也被称为镜象阵列条带,现在我们一般称它为RAID 0+1。RAID 10(RAID 0+1)提供100%的数据冗余,支持更大的卷尺寸。组建RAID 10(RAID 0+1)需要4个磁盘,其中两个为条带数据分布,提供了RAID 0的读写性能,而另外两个则为前面两个硬盘的镜像,保证了数据的完整备份
10、Raid30
RAID 30也被称为专用奇偶位阵列条带。它具有RAID 0和RAID 3的特性,由两组RAID 3的磁盘(每组3个磁盘)组成阵列,使用专用奇偶位,而这两种磁盘再组成一个RAID 0的阵列,实现跨磁盘抽取数据。RAID 30提供容错能力,并支持更大的卷尺寸。象RAID 10一样,RAID 30也提供高可靠性,因为即使有两个物理磁盘驱动器失效(每个阵列中一个),数据仍然可用。
RAID 30最小要求有6个驱动器,它最适合非交互的应用程序,如视频流、图形和图象处理等。这些应用程序顺序处理大型文件,而且要求高可用性和高速度。
11、Raid50
RAID 50被称为分布奇偶位阵列条带。同RAID 30相仿的,它具有RAID 5和RAID 0的共同特性。它由两组RAID 5磁盘组成(每组最少3个),每一组都使用了分布式奇偶位,而两组硬盘再组建成RAID 0,实验跨磁盘抽取数据。RAID 50提供可靠的数据存储和优秀的整体性能,并支持更大的卷尺寸。即使两个物理磁盘发生故障(每个阵列中一个),数据也可以顺利恢复过来。
RAID 50最少需要6个驱动器,它最适合需要高可靠性存储、高读取速度、高数据传输性能的应用。这些应用包括事务处理和有许多用户存取小文件的办公应用程序。
本文出自 “duyuheng” 博客,谢绝转载!
RAID阵列