磁盘阵列(RAID)又称为廉价磁盘冗余阵列或独立磁盘冗余阵列。从概念上讲所谓RAID就是将两块或多块硬盘创建(映射)成一个逻辑卷,以加大磁盘的容量和增加磁盘的带宽(读写速度)。RAID是把多个独立的物理硬盘按不同的方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和数据备份技术。
在用户看来,组成的磁盘组就像是一个硬盘,用户可以对其进行分区、格式化等操作。总之,对磁盘阵列的操作和与单个硬盘一模一样。不同的是磁盘阵列的存储速度比单个硬盘高很多,而且可以提供自动数据备份。
组成磁盘阵列的不同方式称为RAID级别(RAID level)。
为了解释RAID,首先必须介绍3个与RADI相关的重要术语
1.条带化(stripping)
2.镜像(mirroring)
3.数据校验(Parity)
条带化,是将数据划分成一定大小的部分(pieces),之后将它们平均地存放在属于一个逻辑卷的多个硬盘上。这样就会在一个逻辑卷上产生更快的读写速度了,因为多个硬盘一起读写一个数据。并且会形成更大的磁盘容量,因为组合了多个硬盘。
镜像,是将相同的数据同步地写到同一个逻辑卷的不同成员(硬盘)上的处理操作。通过这种将相同的数据写到同一个逻辑卷的每一个成员(硬盘)上的方法,镜像提供了对数据的保护。镜像其实就是通常说的数据冗余,当一个硬盘损坏时还可以使用其它硬盘上的相同数据。
数据校验,也成为奇偶校验,就是检查数据的错误。在一些RAID级别中,当系统读写数据时会进行一些计算。这样当一个逻辑卷中的一个或多个硬盘无法访问时就有可能通过相同的数据校验操作重新构造出磁盘上损坏的数据并读取出来。这是因为在Parity的算法中包含了ErrorCorrection Code(错误纠正代码),简称ECC的功能,这种算法为RAID卷中的每个数据条带(块)计算出相应的数据校验码。
条带化产生了较好的IO执行效率(提高读写速度),镜像提供了对数据的保护,数据校验可以检查数据并利用数据校验码来恢复数据。这个就是RAID三大特性,即大规模、保护数据和提IO速度。
最初RAID只是一种将两个或多个硬盘逻辑组合在一起的简单方式。随着用户需求的增加,RAID的基本级别(Level)目前已经有0~7级,加之不同级别之间的各种组合,可以选择的RAID种类很多。最基本和常用的就是RAID0、RAID1和RAID5这三种。