RAID 技术入门 计算机技术的发展,已使
的 CPU 的速度进入 GHz 时代。而计算机的内存也有 66MHz 发展到 100MHz 甚至 133MHz 。显卡的速度也日新月异。 计算机制造商们全面打起了提速战。 作为计算机最重要的外部存储设备,硬盘当然也不甘落后,也相继推出了 ATA66 和 ATA100 硬盘。即便如此,硬盘存储仍然摆脱不了系统性能瓶颈的角色,甚至由于其它计算机部件幅度大得多的性能提升,使得硬盘速度虽有提升,但依旧陷入了更为尴尬的境地。而且由于硬盘速度很大程度上依赖于机械部分,因此基于现在的硬盘技术,要想大副提速非常困难。
不仅如此, 硬盘存储在数据安全上也是问题多多。现在人们的工作已无法摆脱计算机, 这一方面使得人们的工作效率大大提高, 但潜在的危险也是明摆着的: 一旦硬盘的数据损坏,人们长时间的工作就可能毁于一旦。
那么,有没有基于现在的硬盘提升存储性能和数据安全的技术呢?有,它就是 RAID 技术。
什么是 RAID?
RAID 是英文 Redundant Array of Independent Disks 的缩写,翻译成中文即为独立磁盘冗余阵列,或简称磁盘阵列。简单的说, RAID 是一种把多块独立的硬盘(物理硬盘)按不同方式组合起来形成一个硬盘组(逻辑硬盘),从而提供比单个硬盘更高的存储性能和提供数据冗余的技术。组成磁盘阵列的不同方式成为 RAID 级别( RAID Levels )。
数据冗余的功能是在用户数据一旦发生损坏后,利用冗余信息可以使损坏数据得以恢复,从而保障了用户数据的安全性。
在用户看起来,组成的磁盘组就像是一个硬盘,用户可以对它进行分区,格式化等等。总之,对磁盘阵列的操作与单个硬盘一模一样。不同的是,磁盘阵列的存储性能要比单个硬盘高很多,而且可以提供数据冗余。
Independent 还是 Inexpensive?
细心的读者可以注意到,一部分文章把 RAID 解释为 Redundant Array of Inexpensive Disks ,即廉价磁盘冗余阵列。那么,到底是 Independent 还是 Inexpensive 呢? 说到这里,我们要看一看 RAID 的历史了。
1988 年,由加州大学 Berkeley 分校的 David A. Patterson 等人在原有技术的基础上进行了扩充,提出几种新的磁盘组织方式,目的是用多个用于个人电脑上的廉价磁盘替代当时数据中心系统普遍采用的价格昂贵的 SLEDs 磁盘( Single Large Expensive Disks )。根据这一目的, David A. Patterson 等人首次使用了 Redundant Array of Inexpensive Disks 这一名称。 RAID 被提出后,引起了人们的极大兴趣,并获得了成功。
但是随着存储技术的发展, SLEDs 磁盘已经成为过去。现在普遍采用的磁盘在价格和性能上相差不多,因此如果再用廉价( Inexpensive )来形容组成 RAID 的磁盘就不合适了。 为了适应技术的发展,委员会开始普遍把 RAID 解释为 Redundant Array of Independent Disks 。
RAID 级别:
RAID 技术经过不断的发展,现在已拥有了从 RAID 0 到 6 七种基本的 RAID 级别。另外,还有一些基本 RAID 级别的组合形式,如 RAID 10 ( RAID 0 与 RAID 1 的组合), RAID 50 ( RAID 0 与 RAID 5 的组合)等。
不同 RAID 级别代表着不同的存储性能、数据安全性和存储成本。下面就针对一些最为常用的 RAID 级别做简单介绍。
RAID 0 :
RAID 0 又称为 Stripe 或 Striping ,它代表了所有 RAID 级别中最高的存储性能。 RAID 0 提高存储性能的原理是把连续的数据分散到多个磁盘上存取,这样,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。 
示图 1
如图 1 所示:系统向三个磁盘组成的逻辑硬盘( RADI 0 磁盘组)发出的 I/O 数据请求被转化为 3 项操作,其中的每一项操作都对应于一块物理硬盘。我们从图中可以清楚的看到通过建立 RAID 0 ,原先顺序的数据请求被分散到所有的三块硬盘中同时执行。从理论上讲,三块硬盘的并行操作使同一时间内磁盘读写速度提升了 3 倍。 但由于总线带宽等多种因素的影响,实际的提升速率肯定会低于理论值,但是,大量数据并行传输与串行传输比较,提速效果显著显然毋庸置疑。
RAID 0 的缺点是不提供数据冗余,因此一旦用户数据损坏,损坏的数据将无法得到恢复。
RAID 0 具有的特点,使其特别适用于对性能要求较高,而对数据安全不太在乎的领域,如图形工作站等。对于个人用户, RAID 0 也是提高硬盘存储性能的绝佳选择。
RAID 1 :
RAID 1 又称为 Mirror 或 Mirroring ,它的宗旨是最大限度的保证用户数据的可用性和可修复性。 RAID 1 的操作方式是把用户写入硬盘的数据百分之百地自动复制到另外一个硬盘上。如图 2 所示: 
示图 2
当读取数据时,系统先从 RAID 0 的源盘读取数据,如果读取数据成功,则系统不去管备份盘上的数据;如果读取源盘数据失败,则系统自动转而读取备份盘上的数据,不会造成用户工作任务的中断。当然,我们应当及时地更换损坏的硬盘并利用备份数据重新建立 Mirror ,避免备份盘在发生损坏时,造成不可挽回的数据损失。
由于对存储的数据进行百分之百的备份,在所有 RAID 级别中, RAID 1 提供最高的数据安全保障。同样,由于数据的百分之百备份,备份数据占了总存储空间的一半,因而, Mirror 的磁盘空间利用率低,存储成本高。
Mirror 虽不能提高存储性能,但由于其具有的高数据安全性,使其尤其适用于存放重要数据,如服务器和数据库存储等领域。
RAID 0+1 :
正如其名字一样 RAID 0+1 是 RAID 0 和 RAID 1 的组合形式,也称为 RAID 10 。
以四个磁盘组成的 RAID 0+1 为例,其数据存储方式如图 3 所示:
示图 3
RAID 0+1 是存储性能和数据安全兼顾的方案。它在提供与 RAID 1 一样的数据安全保障的同时,也提供了与 RAID 0 近似的存储性能。
由于 RAID 0+1 也通过数据的 100% 备份提供数据安全保障,因此 RAID 0+1 的磁盘空间利用率与 RAID 1 相同,存储成本高。
RAID 0+1 的特点使其特别适用于既有大量数据需要存取,同时又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、各种档案管理等。
RAID 5 :
RAID 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。 以四个硬盘组成的 RAID 5 为例,其数据存储方式如图 4 所示: 
示图 4
图中, P0 为 D0 , D1 和 D2 的奇偶校验信息,其它以此类推。
由图中可以看出, RAID 5 不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成 RAID5 的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当 RAID5 的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。
RAID 5 可以理解为是 RAID 0 和 RAID 1 的折衷方案。 RAID 5 可以为系统提供数据安全保障,但保障程度要比 Mirror 低而磁盘空间利用率要比 Mirror 高。 RAID 5 具有和 RAID 0 相近似的数据读取速度,只是多了一个奇偶校验信息,写入数据的速度比对单个磁盘进行写入操作稍慢。同时由于多个数据对应一个奇偶校验信息, RAID 5 的磁盘空间利用率要比 RAID 1 高,存储成本相对较低。
JBOD :
JBOD(Just Bundle Of Disks) 译成中文可以是 " 简单磁盘捆绑 " ,通常又称为 Span 。 JBOD 不是标准的 RAID 级别,它只是在近几年才被一些厂家提出,并被广 泛采用。三个硬盘组成的 Span 为例,其数据存储方式如图 5 所示:
示图 5
Span 是在逻辑上把几个物理磁盘一个接一个串联到一起,从而提供一个大的逻辑磁盘。 Span 上的数据简单的从第一个磁盘开始存储, 当第一个磁盘的存储空间用完后, 再依次从后面的磁盘开始存储数据。
Span 存取性能完全等同于对单一磁盘的存取操作。 Span 也不提供数据安全保障。它只是简单的提供一种利用磁盘空间的方法, Span 的存储容量等于组成 Span 的所有磁盘的容量的总和。
IDE RAID 与 SCSI RAID
IDE 和 SCSI 是计算机的两种不同的接口,前者普遍用于 PC 计算机,而后者一般用于 Apple Macintosh 系统和 UNIX 操作系统。
RAID 技术问世时是基于 SCSI 接口,因其成本高,因此主要面向服务器等高端应用。普通用户根本无缘拥有 RAID 。
随着计算机的大众化,由此带动 PC 计算机的空前繁荣。相应的,在市场的带动下,用于 PC 计算机的 IDE 接口设备价格大幅降低,同时性能大幅提高。以 30G 容量硬盘为例, IDE 接口的硬盘现在只需 1000 元左右,而 SCSI 接口的硬盘则需 5000 到 6000 元,而它们的性能则相差无几。
但是, RAID 技术仍只基于 SCSI 接口,普通的 PC 用户在羡慕 RAID 技术的好处的同时,却无法拥有 RAID 。
可喜的是,近来一些厂商看到了 RAID 在低端用户中的巨大市场,开始把 RAID 技术移植到 IDE 接口上,推出了基于 IDE 接口的 RAID 应用,称为 IDE RAID 。而基于 SCSI 接口的 RAID 应用则相应称为 SCSI RAID 。
与 SCSI RAID 相比, IDE RAID 具有极低的价格,和一点也不逊色的性能表现,相应的, IDE RAID 解决方案就具有 SCSI RAID 无法比拟的高性价比。因此 IDE RAID 自推出后,受到普通 PC 用户和普通商业应用的普遍欢迎。 RAID 对于普通的用户来说,再也不是什么奢侈的技术了
|