一、RAID介绍
RAID 是 Redundent Array of Inexpensive Disks 的缩写,直译为 :“廉价冗余磁盘阵列”,也简称为“磁盘阵列”。后来 RAID 中的字母I被改作了 Independent,RAID 就成了“独立冗余磁盘阵列”,但这只是名称的变化,实质性的内容并没有改变。可以把RAID理解成一种使用磁盘驱动器的方法,它将一组磁盘驱动器用某种逻辑方式联系起来,作为逻辑上的一个磁盘驱动器来使用。
RAID 的优点
- 传输速率高。在部分 RAID 模式中,可以让很多磁盘驱动器同时传输数据,而这些磁盘驱动器在逻辑上又是一个磁盘驱动器,所以使用 RAID 可以达到单个的磁盘驱动器几倍的速率。因为 CPU 的速度增长很快,而磁盘驱动器的数据传输速率无法大幅提高,所以需要有一种方案解决二者之间的矛盾。
- 更高的安全性。相较于普通磁盘驱动器很多 RAID 模式都提供了多种数据修复功能,当 RAID 中的某一磁盘驱动器出现严重故障无法使用时,可以通过 RAID 中的其他磁盘驱动器来恢复此驱动器中的数据,而普通磁盘驱动器无法实现,这是使用RAID的第二个原因。
RAID 的分类
RAID 0,无冗余无校验的磁盘阵列。数据同时分布在各个磁盘上,没有容错能力,读写速度在 RAID 中最快,但因为任何一个磁盘损坏都会使整个 RAID 系统失效,所以安全系数反倒比单个的磁盘还要低。一般用在对数据安全要求不高,但对速度要求很高的场合,如:大型游戏、图形图像编辑等。此种 RAID 模式至少需要 2 个磁盘,而更多的磁盘则能提供更高效的数据传输。
二、RAID 级别介绍
随着 RAID 技术经过不断的发展,现已有 RAID 0 到 RAID 6 七种基本的 RAID级别,同时还有 RAID 0 和 RAID 1 的组合形式,称为 RAID10。其中的级别并不代表技术的高低,而 RAID 2 和 RAID 4 基本上不再使用了,RAID 3 则是由于实现起来太复杂也很少使用。目前这些常用的 RAID 级别 Linux 内核都能够支持,本节就以 Linux 2.6 的内核为例,在 Linux 2.6 内核中的软 RAID 可支持一下级别 :RAID 0、RAID 1、RAID 4、RAID 5 以及 RAID 6 等。Linux 2.6 的内核除支持以上几种 RAID 级别外,还可支持 LINEAR (线性模式)的软 RAID 线性模式是将两个或更多的磁盘组合到一个物理设备中,磁盘不必具有相同的大小,在写入 RAID 设备时会首先填满磁盘 A ,然后是磁盘 B ,以此类推。
- RAID 0
也称为条带模式 (striped),即把连续的数据分散到多个磁盘上存取,如图所示。当系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。因为读取和写入是在设备上并行完成的,读取和写入性能将会增加,这通常是运行 RAID