RAID技术
 
RAID代表Redundant Array of Inexpensive (or Independent) DriveRAID1988年由美国加州大学的Berkeley分校的David Patterson等几人提出来的。从那以后,磁盘阵列技术发展很快,并逐渐走向成熟。
RAID的优点在于三个方面即可用性(Availability)、大容量(Capacity)及高性能(Performance)。利用RAID技术于存储系统的好处有:
Oslash;
通过多个磁盘组织在一起作为一个逻辑卷提供磁盘跨越功能
Oslash;
通过镜像或校验操作提供容错能力
Oslash;
通过数据分成多个数据块并行写入/读出多个磁盘以提高访问磁盘的速度
根据实际情况选择适当的RAID级别可以满足用户对存储系统可用性、性能和容量的要求。常用的RAID级别有以下几种:NRAIDJBODRAID0RAID1RAID0+1RAID3RAID5 ,RAID6等。为提高可靠性和性能,常使用RAID5RAID0+1)。下面分别简要介绍各自的原理及特点:
NRAID
-即Non-RAID,所有磁盘的容量组合成一个逻辑盘,没有数据块分条(no block stripping)。NRAID不提供数据冗余。要求至少一个磁盘。
JBOD
- 代表Just a Bunch of Drives,磁盘控制器把每个物理磁盘看作独立的磁盘,因此每个磁盘都是独立的逻辑盘。JBOD也不提供数据冗余。要求至少一个磁盘。

RAID0
- 即Data Stripping数据分条技术。整个逻辑盘的数据是被分条(stripped)分布在多个物理磁盘上,可以并行读/写,提供最快的速度,但没有冗余能力。要求至少两个磁盘RAID0代表了RAID系统的高性能,成本最低的方案。由于没有容错功能,RAID0适用于低成本,低可靠性的台式系统,在这里,高速的数据吞吐比可靠性更重要。

RAID1
- 把一个磁盘的数据镜像到另一个磁盘上,只能在两个磁盘上实施,具有最高的数据冗余能力, RAID1又称镜像(Mirror)盘,采用镜像容错来提高可靠性。即每一个工作盘都有一个镜像盘,每次写数据时必须同时写入镜像盘,读数据时只从工作盘读出。一旦工作盘发生故障立即转入镜像盘,从镜像盘中读出数据,然后由系统再恢复工作盘正确数据。因此这种方式数据可以重构,但工作盘和镜像盘必须保持一一对应关系。这种盘阵列可靠性很高,但其有效容量减小到总容量一半以下。因此RAID1常用于对出错率要求极严的应用场合,如财政、金融等领域。只允许一颗硬盘失败。

RAID0+1
- 把RAID0RAID1技术结合起来,即Mirroring+Stripping。数据除分布在多个盘上外,每个盘都有其物理镜像盘,提供全冗余能力,允许一个以下磁盘故障,而不影响数据可用性,并具有快速读/写能力。要求至少4个硬盘才能作成RAID0+1只允许一颗硬盘失败。

RAID3
- 带有一个专门的校验盘的分条技术。数据被分布在多个磁盘上以提高读/写速度,并用一个专门的校验盘来存储校验信息,当一个成员盘故障时,控制器可以从校验盘重新恢复/生成丢失的数据。RAID3要求至少3个盘,且其中一个为专职校验盘。它的优点是支持阵列中多硬盘的同步访问,整个阵列的带宽可以充分利用,在要求大块数据顺序传送时较理想,如:图形、图象、科学计算等应用。其缺点是每次读写要牵动整个组,每次只能完成一次I/O,所以作为文件服务器共享时性能不好。只允许一颗硬盘失败。

RAID5
- RAID5是一种循环偶校验独立存取的阵列。类似于RAID3,但校验数据不是存储在一个专职的校验盘上,而是分布在多个盘上。当一个磁盘故障时,控制器可以从其他尚存的磁盘上重新恢复/生成丢失的数据而不影响数据的可用性。RAID5要求至少3个磁盘,容量是(N-1/N。这一改变解决了争用校验盘的问题,因此DAID5内允许在同一组内并发进行多个写操作。所以RAID5即适于大数据量的操作,也适于各种事务处理。它是一种快速,大容量和容错分布合理的磁盘阵列。只允许一颗硬盘失败。
RAID6RAID家族中的新技术,是在RAID 5基础上扩展而来的。所以同RAID 5一样,数据和校验码都是被分成数据块然后分别存储到磁盘阵列的各个硬盘上。RAID 6加入了一个独立的校验磁盘,它把分布在各个磁盘上的校验码都备份在一起,这样RAID 6磁盘阵列就允许多个磁盘同时故障,这对于数据安全要求很高的应用场合是非常的必要的。这样搭建一个RAID 6磁盘阵列最少需要4块硬盘。但是RAID 6并没有改善RAID 5写入性能不佳的情况,写入缓存的应用仅仅能对于这个缺点进行一定程度的弥补但是并不能从根本上解决。因为RAID 5RAID 6都可以根据应用程序来更改数据块的大小,所以它的实际性能还会受到这个因素的影响。允许两颗硬盘失败。