一、RAID 简介
RAID 是 Redundant Array of Inexpensive Disks 的缩写,直译为 “ 廉价冗余磁盘阵列 ” ,也简称为 “ 磁盘阵列 ” 。后来 RAID 中的字母 I 被改作了 Independent , RAID 就成了 “ 独立冗余磁盘阵列 ” ,但这只是名称的变化,实质性的内容并没有改变。 RAID 就是以多个磁盘组成并行工作的磁盘阵列的方式来提高数据存取的速度和安全两方面的能力。 RAID 技术最初都是建立在 SCSI 系统基础上,后来 Promise 公司第一次提出并研发了基于 IDE 硬盘的 RAID 产品,从而能以较低价格提供更高的性能和安全保证。
同时, RAID 系统的优点也是相当明显的。首先, RAID 成本低,功耗小,传输速率高。在 RAID 中,可以让很多磁盘驱动器同时传输数据,而这些磁盘驱动器在逻辑上又是一个磁盘驱动器,所以使用 RAID 可以达到单个的磁盘驱动器几倍、几十倍甚至上百倍的速率。这也是 RAID 最初想要解决的问题。因为当时 CPU 的速度增长很快,而磁盘驱动器的数据传输速率无法大幅提高,所以需要有一种方案解决二者之间的矛盾。 RAID 最后成功了。此外, RAID 可以提供容错功能。这是使用 RAID 的第二个原因,因为普通磁盘驱动器无法提供容错功能,如果不包括写在磁盘上的 CRC (循环冗余校验)码的话。 RAID 和容错是建立在每个磁盘驱动器的硬件容错功能之上的,所以它提供更高的安全性。 最后, RAID 比起传统的大直径磁盘驱动器来,在同样的容量下,价格要低许多。正是这些优点使得 RAID 技术迅速普及,并成为 2001 年的一个热点。
RAID 技术经过不断的发展,现在已拥有了从 RAID 0 到 6 七种基本的 RAID 级别。另外,还有一些基本 RAID 级别的组合形式,如 RAID 1+0 ( RAID 0 与 RAID 1 的组合), RAID 5+0 ( RAID 0 与 RAID 5 的组合)等。 其中在 IDE 中,主要以 RAID 0 、 RAID 1 和 RAID 0 + 1 为主,因此我们也将对 RAID 0 、 RAID 1 、 RAID 0 + 1 作详细介绍。
二、RAID 0
RAID 0 使用一种名为 “ 条带 ” ( striping )的技术把数据分布到各个磁盘上,在那里每个 “ 条带 ” 被分散到连续 “ 块 ” 上 ,RAID 0 至少使用两个磁盘驱动器,并将数据分成从 512 字节到数兆字节的若干块,这些数据块被交替写到磁盘中。第 1 段被写到磁盘 1 中,第 2 段被写到磁盘 2 中,如此等等。当系统到达阵列中的最后一个磁盘时,就写到磁盘 1 的下一分段,如此下去。分割数据将 I / O 负载平均分配到所有的驱动器。由于驱动器可以同时写或读,性能得以显著提高。但是,它却没有数据保护能力。如果一个磁盘出故障,数据就会丢失。 RAID 0 不适用于关键任务环境,但是,它却非常适合于视频捕捉和编辑或图像编辑。条带允许从多个磁盘上同时存取信息,可以平衡磁盘间的输入 / 输出负载,从而达到最大的数据容量,最快的存取速度。 RAID-0 是唯一没有冗余的一级 RAID 。没有冗余使 RAID-0 除了速度外还有低成本的优点,但这也意味着如果阵列中某个磁盘失败,该阵列上的所有数据都将丢失。在 RAID-0 中,使磁盘故障恢复必须更换出错的磁盘,并从备份中恢复所有驱动器上的数据。
需要注意的是,其中对于单个磁盘来说,它的数据传输率却并未提升。 RAID 0 不具有数据冗余功能,所以不能提高数据的安全性。 RAID 0 模式下可以使用的磁盘总空间相当于组成阵列的两块磁盘的容量之和。如果其中任何一块硬盘出现问题,整个系统都将无法使用。
在使用 RAID 0 方式的磁盘阵列时,大家应该使用同样型号和容量的硬盘。如果硬盘型号和容量不同的话,一块的速度比另外一块慢很多的话,会损失很多性能的,因为较快的硬盘会慢下来等待较慢的硬盘做完工作。
另外, RAID 0 阵列的容量大小是由阵列中最小容量的硬盘决定的。总的阵列容量就等于这个最小磁盘容量乘以磁盘的个数。例如,要阵列 3 个 1 GB 硬盘和一个 10 GB 硬盘,那么阵列的总容量大小就只有 4 GB ( 最小容量的磁盘 = 1 GB, 乘 4 个硬盘 = 4 GB), 那个 10GB 硬盘所剩下的 9 GB 就不能被利用了。这就是这种方式下需要相同硬盘的另一个原因:避免浪费硬盘容量。
三、RAID 1
它能够自动对数据进行备份,提高数据的完整性和安全性。 RAID 1 主要是通过将一块硬盘中的数据完整复制到另外一块硬盘实现数据的冗余。每一个磁盘驱动器都有一个镜像磁盘驱动器,镜像磁盘驱动器随时保持与原磁盘驱动器的内容一致。
例如:两块 73GB 硬盘做成一个阵列将看起来像一个 73GB 的硬盘。当数据写入一块硬盘时, RAID 控制器同时地将同样的数据写到另外一块硬盘上。结果,第二块硬盘就完全成了第一块硬盘的镜像。一旦第一块硬盘损坏,第二块硬盘将自动接管操作。 RAID 1 特别是适合于安全性要求很高的场合下的应用。在这些特别的场合,要用到多个备份。一个 RAID 1 阵列可用四个(或更多)硬盘来设置,为其中一个硬盘做成 3 个之多的冗余备份!
RAID 1 具有最高的安全性,但只有较少的磁盘空间被用来存储数据,这是以损失另外一块硬盘的容量为代价的。它主要用在对数据安全性要求很高,而且要求能够快速恢复被损坏的数据的场合。虽然 RAID 1 可以加强数据安全性,但是速度却有所降低。这是因为 RAID 1 需要对同一数据进行两次读写,分别写入到两块硬盘之中。当保存文件时,数据被同时复制到两块硬盘上。这样,即使其中一块硬盘损坏,整个系统仍然可以继续正常使用,不会出现任何问题。
同样,在是使用 RAID 镜像时,可用的磁盘容量依然是等于最小硬盘的容量。使用 1 GB 和 10 GB 来做 RAID 1 阵列是愚蠢的,整个阵列的容量只有 1 GB 的容量, 10GB 上有 9GB 不能被使用。这一点上,也说明最好需要同样容量大小和同样性能的硬盘做 RAID 1 阵列。
四、RAID 0 + 1
从其名称上就可以看出它是相对于 RAID 0 和 RAID 1 的综合,单独使用 RAID 1 也会出现类似单独使用 RAID 0 那样的问题,即在同一时间内只能向一块磁盘写入数据,不能充分利用所有的资源。为了解决这一问题,我们可以在磁盘镜像中建立带区集。因为这种配置方式综合了带区集和镜像的优势,所以被称为 RAID 0+1 。 RAID 0+1 是存储性能和数据安全兼顾的方案。它在提供与 RAID 1 一样的数据安全保障的同时,也提供了与 RAID 0 近似的存储性能。
由于 RAID 0+1 也通过数据的 100% 备份提供数据安全保障,因此 RAID 0+1 的磁盘空间利用率与 RAID 1 相同,存储成本高。 RAID 0+1 的特点使其特别适用于既有大量数据需要存取,同时又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、各种档案管理等。
五、其它的 RAID 技术
RAID 2 ,又称纠错海明码磁盘阵列。磁盘驱动器组中的第一个、第二个、第四个 …… 第 2n 个磁盘驱动器是专门的校验盘,用于校验和纠错,例如七个磁盘驱动器的 RAID2 ,第一、二、四个磁盘驱动器是纠错盘,其余的用于存放数据。使用的磁盘驱动器越多,校验盘在其中占的百分比越少。 RAID2 对大数据量的输入输出有很高的性能,但少量数据的输入输出时性能不好。 RAID2 很少实际使用。
RAID 3 和 RAID 4 被称为奇校验或偶校验的磁盘阵列。不论有多少数据盘,均使用一个校验盘,采用奇偶校验的方法检查错误。任何一个单独的磁盘驱动器损坏都可以恢复。 RAID3 和 RAID4 的数据读取速度很快,但写数据时要计算校验位的值以写入校验盘,速度有所下降。 RAID3 和 RAID4 的使用也不多。
RAID 5 是无独立校验盘的奇偶校验磁盘阵列。同样采用奇偶校验来检查错误,但没有独立的校验盘,校验信息分布在各个磁盘驱动器上。 RAID5 对大小数据量的读写都有很好的性能,被广泛地应用。但是由于其成本相当高,所以在民用级别中几乎没有它的身影。
下面这张表格是对各类主要 RAID 技术的一个总结。
RAID 级别 |
RAID-0 |
RAID-1 |
RAID-3 |
RAID-5 |
RAID-1 + 0 |
别名 |
条带 |
镜象 |
专用奇偶位条带 |
分布奇偶位条带 |
镜象阵列条带 |
容错性 |
没有 |
有 |
有 |
有 |
有 |
冗余类型 |
没有 |
复制 |
奇偶位 |
奇偶位 |
复制 |
热备盘选项 |
没有 |
有 |
有 |
有 |
有 |
需要的磁盘数 |
一个或多个 |
只需 2 个 |
三个或更多 |
三个或更多 |
只需 4 个 |
可用容量 |
总的磁盘的容量 |
只能用磁盘容量的 50% |
( n-1 ) /n 的磁盘容量。其中 n 为磁盘数 |
( n-1 ) /n 的总磁盘容量。其中 n 为磁盘数 |
磁盘容量的 50% |
飞客数据恢复中心 http://www.fix.com.cn
飞客数据恢复中心全国免费服务电话 800 - 810 - 6696 |