|
常见RAID介绍 RAID0; I5 Y4 Y4 q' j( v; \* O& D
RAID0由两个或两个以上的硬盘组成,其容量是它们每个容量的总和,好处是速度快,缺点是没有容错能力,往往用在要求速度高但对数据安全要求不高的场合。
$ n8 }& `8 e5 N" Y# @+ c RAID0其实就是数据分段 (Disk Striping)。RAID0模式一般通过两个以上的硬盘组成一个磁盘阵列来实现。在磁盘阵列子系统中,几个硬盘并行处理,在存取数据时由几个硬盘分别同时进行操作,读写各自的部分。数据按系统规定的"段"为单位依次写入多个硬盘,例如数据段1写入硬盘0,段2写入硬盘1,段3写入硬盘2等等。当数据写完最后一个硬盘时,它就重新从盘0的下一可用段开始写入,写数据的全过程按此重复直至数据写完。所以这样整个系统的性能会得以大大的提高。
0 N& K i" e) d+ i6 O RAID0这是所有RAID规格中效率最高,不过它有一个致命的缺点——不具有容错性的方式。因为它将数据分成区块存储在不同硬盘内,当任何一个磁盘驱动器发生问题时,整个数组皆会受到影响——如果其中有一个硬盘中的数据受到破坏,整个数据便不能被正确读出了。这种隐患也随着系统中硬盘总数量的增多而加大。此种数组类型适用于需要高效能的系统,不适合使用在需要高安全性的数据系统中。
2 N0 X5 b' E" n) t 对于打算使用RAID 0的朋友,我们建议使用同一个磁盘驱动器以获得更好的效能及数据储存效率,因为磁盘阵列容量等于磁盘驱动器的数量乘以最小的磁盘驱动器容量。例如:一个 40GB 及一个 60GB 的磁盘驱动器将形成个 80GB (40GB x 2) 的磁盘阵列。, V2 q8 W5 i. p2 D6 d! m9 k
计算机技术发展迅速,但硬盘传输率也成了性能的瓶颈。怎么办?IDE RAID技术的成熟让我们轻松打造自己的超高速硬盘。在实际应用中,RAID 0硬盘阵列能比普通IDE 7200转ATA 133硬盘快得多,时至今日,在大多数的高端或者玩家主板上我们都能找到一颗PROMISE或者HighPoint的RAID芯片,同时发现它们提供的额外几个IDE接口。没错,RAID已经近在眼前,难道你甘心放弃RAID为我们带来的性能提升吗?答案当然是否定的! 5 ?! C% J Y v% i4 {* a9 N- Y& G
实用的IDE RAID ; B5 ?5 t+ M4 \
RAID可以通过软件或硬件实现。像Windows 2000就能够提供软件的RAID功能,但是这样需要消耗不小的CPU资源,降低整机性能。而硬件实现则是一般由RAID卡实现的,高档的SCSI RAID卡有着自己专用的缓存和I/O处理器,但是对于家庭用户来说这样的开销显然是承受不了的,毕竟为了实现RAID买两个或者更多的HDD已经相当不容易了。我们还有一种折中的办法——IDE RAID。或许这才是普通人最容易接受的方法。虽然IDE RAID在功能和性能上都有所折中,但相对于低廉的价格.9 A" ~$ F. f! o j+ k% }& o
为什么要用RAID 0
# D) x* L$ L K RAID 0至少需要两块硬盘才能够实现,它的容量为组成这个系统的各个硬盘容量之和,这几块硬盘的容量要相同,在家用IDE RAID中一般级联两块硬盘,一定要用同型号同容量的硬盘。RAID 0模式向硬盘写入数据的时候把数据一分为二,分别写入两块硬盘,读取数据的时候则反之,这样的话,每块硬盘只要负担一半的数据传输任务,得到的结果也就是速度的增加。 - {! [) W0 q1 O/ \/ ? t, j. t
实用的IDE RAD + S2 L& o& X- S- s0 X7 ]
下面我们就以HighPoint HPT372 RAID控制芯片为例组建一个RAID系统,让两个硬盘“变”成一个硬盘! 3 R: a3 V+ q5 b# b* N# ?( J" v
默认的RAID模式为RAID 0,当然我们也可以根据需要选择其它RAID模式。
3 @% I% X2 Z6 b x9 E; k 无论是主板板载的IDE RAID控制芯片还是独立的PCI接口IDE RAID控制器,它们都有一个用来进行配置和工作的独立BIOS,它们的BIOS设置画面会在系统POST完成之后显示,我们可以看到这时候HighPoint HPT372 IDE RAID控制芯片的BIOS画面已经出现在屏幕上,按Ctrl+H进入控制界面。
/ C$ Q3 A9 q% u# q1 p5 w" o f. I0 R 这里我们看到可以选择的依次有Create Array(建立阵列)、Delete Array(删除阵列)、Create/Delete Spare(建立、删除)和Select Boot Disk(选择启动硬盘)这几个选项。而在选项的下方则显示了所识别到的硬盘和它们的工作状态。我们要建立一个阵列,所以选择Create Array,在出现的画面中我们就可以完成所有的阵列建立设置工作,在Array Mode中我们可以选择建立RAID的种类,默认的是RAID 0模式,当然我们可以根据需要选择RAID 0、0+1、JBOD等。 & b9 x: q" i9 V3 k+ w7 L/ h! a4 a/ d1 @
当我们确定了选择的RAID模式之后,便需要为这个阵列进行命名,你可以选择自己好识别容易记的名字。确定名字之后我们就要来选择驱动器了。因为我们建立的是RAID 0模式,所以只需要2个硬盘。我们选定在下面设备栏中的两块硬盘。 U$ S9 j9 B; O
完成以后就能设定块的大小了。所谓块的大小就是指阵列中的最基本数据单位。一般来说块越小越能充分利用空间。但是IDE RAID因为没有自己独立的I/O处理器,所以块越小也意味着越高的资源消耗。一般来说默认的64K或者32K都是不错的选择。做完这一切之后,整个阵列就建立完成了,选择Start Creation Process之后就能保存退出了。 3 G1 m* x0 B: H
RAID 0的启用
/ T3 u2 z4 W B# a. i" y2 B 如果需要从RAID启动,我们还需要在BIOS中把启动顺序设置为ATA RAID,独立的RAID卡我们则需要设置为SCSI启动。对于Windows 9x的用户,到此整个RAID就建立完毕了,我们在DOS下按照普通单个硬盘分区格式化安装系统就搞定了,而操作系统也只会把它当作一个驱动器。使用Windows NT/2000/XP的朋友就要麻烦一点了,需要另外安装一下你的RAID驱动。 7 {7 ]+ U9 C1 T# A8 f
注意事项 % d+ Y) j! ]% C% l: e$ L" N
1.如果要做RAID 0必须至少有两个硬盘,另外,一旦将硬盘组成RAID阵列就会丢失原来的数据。 ; Z m# G1 z9 j5 h# I
2.选择硬盘的时候最好完全一样,否则会降低性能,此时的理论速度也只是慢硬盘速度的两倍。 # e* K% e* x9 k: I" d1 F! i
3.如果RAID 0阵列中的一块硬盘损坏,硬盘阵列的数据将全部丢失,造成损失。 ; F7 A6 v! U; T6 a. i5 V/ G
一起来打造自己的超高速硬盘吧,相信随着科技的进步IDE RAID芯片会在更多的主板上出现,而IDE RAID芯片的发展也会更为迅速,就像现在Serial ATA RAID芯片也已经蓄势待发一样。在硬盘内部传输率提高缓慢的今天,RAID是一个非常好的解决方案。
4 O |. J6 b4 j) M, X! kRAID1
! f, q o [: z# z! U3 Y 如果说RAID 0是追求性能而放弃安全性的话,那么RAID 1就正好相反。RAID 1是追求安全性而放弃性能的一种解决方案。它的做法就是通过系统数据冗余--将数据进行实时的备份来完成。(提示:数据冗余的功能指的是在用户数据一旦发生损坏后,利用冗余信息可以使损坏数据得以恢复)
2 p, K1 o2 e' L) K$ H4 p* w* B) o% } RAID 1又称为Mirror或Mirroring,意译为磁盘镜像,每一个磁盘都具有一个对应的镜像盘。对任何一个磁盘的数据写入都会被复制镜像盘中;系统可以从一组镜像盘中的任何一个磁盘读取数据。由于需要空间存入镜像,因此我们所能使用的空间只是所有磁盘容量总和的一半,例如总容量为80GB的两个40GB的硬盘只拥有40GB的可用储存量。因为如果你使用不同容量的磁盘驱动器,那么在较大的磁盘驱动器中可能会有未使用的容量。显然,这磁盘镜像肯定会提高系统成本。当然被"镜像"的硬盘也可被镜像到其它存储设备上,例如可擦写光盘驱动器,虽然以光盘作镜像盘没有用硬盘的速度快,但这种方法比没有使用镜像盘毕竟减少了丢失数据的危险性。) n/ o' j, E9 C, m8 z
RAID 1模式下,任何一块硬盘的故障都不会影响到系统的正常运行。当一块硬盘失效时,系统会忽略该硬盘,转而使用剩余的镜像盘读写数据。在RAID 1下,甚至可以在一半数量的硬盘出现问题时系统仍能不间断的工作。
6 ^3 I, ^: v4 ?4 o/ L# K 通常,我们把出现硬盘故障的RAID系统称为在降级模式下运行。虽然这时保存的数据仍然可以继续使用,但是RAID系统将不再可靠。如果剩余的镜像盘也出现问题,那么整个系统就会崩溃。因此,我们应当及时的更换损坏的硬盘,避免出现新的问题。更换新盘之后,原有好盘中的数据必须被复制到新盘中。这一操作被称为同步镜像。同步镜像一般都需要很长时间,尤其是当损害的硬盘的容量很大时更是如此。在同步镜像的进行过程中,外界对数据的访问不会受到影响,但是由于复制数据需要占用一部分的带宽,所以可能会使整个系统的性能有所下降。
8 S& M6 F; \& X% r) b$ K/ C 此外,因为RAID 1主要是通过二次读写实现磁盘镜像,所以磁盘控制器的负载也相当大,尤其是在需要频繁写入数据的环境中。为了避免出现性能瓶颈,我们可以使用多个磁盘控制器来解决。(提示:在RAID 1模式下,系统读数据的速度会有微小的提高,但写数据的速度就和单个硬盘没有什么差别,其主要是强调安全性)
6 f8 ]+ s$ K( M3 W- fRAID0+12 a1 ~: p4 O6 Q# {# \
RAID 1和RAID 0都各有优点,但如果单独使用RAID 1或RAID 0都无法那些追求性能又要确保系统资料安全性的用户的需要。为了解决这一问题,人们又推出RAID 0+1模式。6 v: [3 D/ [ Y+ a% m0 E# j6 Y
RAID 0+1也称之为RAID 10,是磁盘分段及镜像的结合,结合了 RAID 0及 RAID 1最佳的优点。它采用就是2组RAID 0的磁盘阵列互为镜像,也就是它们之间又成为了一个RAID 1的阵列。在每次写入数据时,磁盘阵列控制器会将数据同时写入两组“大容量阵列硬盘组”(RAID 0)中。在资源的占用上这种方式同RAID 1一样,虽然其硬盘使用率只有50%,但它却是具有最高效率的划分方式。
4 ^& {$ {) a# T$ y 此一类型的组态提供最佳的速度及可靠度。不过你需要两倍的磁盘驱动器数目作为一个 RAID 0,每一端的半数作为镜像用。在执行 RAID 0+1时至少需要4个磁盘驱动器,所以可以说RAID 0+1的“安全性”和“高性能”是通过高成本来换取的。
( T* y( Y" u. H# n5 L3 j. \5 _RAID3
% W& j/ D3 i4 C/ F. h: |* j RAID3是利用一个专门的磁盘存放所有的校验数据,而在剩余的磁盘中创建带区集分散数据的读写操作。RAID3不仅可以像RAID1那样提供容错功能,而且整体开销从RAID1的50%下降为25%(RAID3+1)。随着所使用磁盘数量的增多,额外成本开销会越来越小。在不同情况下,RAID3读写操作的复杂程度也不相同。最简单的情况就是从一个完好的RAID3系统中读取数据。这时,只需要在数据存储盘中找到相应的数据块进行读取操作即可,不会增加额外的系统开销。当向RAID3写入数据时,情况会变得复杂一些。即使我们只是向一个磁盘写入一个数据块,必须计算与该数据块同处一个带区的所有数据块的校验值,并将新值重新写入到校验块中。由此我们可以看出,一个写入操作事实上包含了数据读取(读取带区中的关联数据块),校验值计算,数据块写入和校验块写入4个过程。系统开销大大增加。我们可以通过适当设置带区的大小使RAID系统得到简化。如果某个写入操作的长度恰好等于一个完整带区的大小(全带区写入),那么我们就不必再读取带区中的关联数据块计算校验值。我们只需要计算整个带区的校验值,然后直接把数据和校验信息写入数据盘和校验盘即可。到目前为止,我们所探讨的都是正常运行状况的下的数据读写。下面,我们再来看一下当硬盘出现故障时,RAID系统在降级模式下的运行情况。' B( o7 T1 h% \; m* u6 |
RAID3虽然具有容错能力,但是系统性能会受到影响。当一块磁盘失效时,该磁盘上的所有数据必须使用校验信息重新建立。如果我们是从好盘中读取数据块,不会有任何变化。但是如果我们所要读取的数据块正好位于已经损坏的磁盘,则必须同时读取同一带区中的所有其它数据块,并根据校验值重新建丢失的数据。当我们更换了损坏的磁盘之后,系统必须一个数据块一个数据块的重建坏盘中的数据。整个过程包括读取带区、计算丢失的数据块和向新盘写入新的数据块,都是在后台自动进行。重建活动最好是在RAID系统空闲的时候进行,否则整个系统的性能会受到严重影响。6 o3 r) `7 U9 ?4 J9 Z
RAID5
" }- }- l, _. X8 S7 ~' ?8 g' K$ T RAID 5也被叫做带分布式奇偶位的条带。每个条带上都有相当于一个“块”那么大的地方被用来存放奇偶位。与RAID 3不同的是,RAID 5把奇偶位信息也分布在所有的磁盘上,而并非一个磁盘上,大大减轻了奇偶校验盘的负担。尽管有一些容量上的损失,RAID 5却能提供较为完美的整体性能,因而也是被广泛应用的一种磁盘阵列方案。它适合于输入/输出密集、高读/写比率的应用程序,如事务处理等。为了具有RAID 5级的冗余度,我们需要至少三个磁盘组成的磁盘阵列。RAID 5可以通过磁盘阵列控制器硬件实现,也可以通过某些网络操作系统软件实现。2 F0 O0 s. s q2 K d: w5 g
RAID 6
: X( c! u8 y& i8 D8 aRAID 6是由一些大型企业提出来的私有RAID级别标准,它的全称叫“Independent Data disks with two independent distributed parity schemes(带有两个独立分布式校验方案的独立数据磁盘)”。这种RAID级别是在RAID 5的基础上发展而成,因此它的工作模式与RAID 5有异曲同工之妙,不同的是RAID 5将校验码写入到一个驱动器里面,而RAID 6将校验码写入到两个驱动器里面,这样就增强了磁盘的容错能力,同时RAID 6阵列中允许出现故障的磁盘也就达到了两个,但相应的阵列磁盘数量最少也要4个。每个磁盘中都具有两个校验值,而RAID 5里面只能为每一个磁盘提供一个校验值,由于校验值的使用可以达到恢复数据的目的,因此多增加一位校验位,数据恢复的能力就越强。不过在增加一位校验位后,就需要一个比较复杂的控制器来进行控制,同时也使磁盘的写能力降低,并且还需要占用一定的磁盘空间。因此,这种RAID级别应用还比较少,相信随着RAID 6技术的不断完善,RAID 6将得到广泛应用。RAID 6的磁盘数量为N+2个。. G. |- o& z1 f3 X' \5 J
RAID 7/ p5 |& f3 k4 t' H9 j' {
RAID 7全称叫“Optimized Asynchrony for High I/O Rates as well as High Data Transfer Rates(最优化的异步高I/O速率和高数据传输率)”,它与以前我们见到RAID级别具有明显的区别。RAID 7完全可以理解为一个独立存储计算机,它自身带有操作系统和管理工具,完全可以独立运行。它们与主通道相连,操作系统可以直接对每个磁盘的访问进行控制,可以让每个磁盘在不同的时段进行数据读写,这样就大大改善了I/O的应用,同时也提高了数据读写的能力,而这种磁盘访问方式也叫做非同步访问。在RAID 7中,提供了一个磁盘作为专门的校验盘,它适合于任何一个磁盘进行数据恢复。总的来说,RAID 7与我们传统的RAID级别有很大区别,它的优点很多,但缺点也非常明显,那就是价格非常高,对于普通企业用户并不实用。
7 g: j, ? ?/ K) V' J( ]5 LRAID 5E6 k3 [7 E+ u ?
RAID 5E是由IBM公司提出的一种私有RAID级别,没有成为国际标准。这种RAID级别也是从RAID 5的基础上发展而来的,它与RAID 5不同的地方是将数据校验信息平均分布在每一个磁盘中,并且每个磁盘都要预留一定的空间,这部分空间没有进行条带化(条带是指数据为了保存在RAID中,被划分成的最小单元。通过对条带进行调整,可以使支持RAID的磁盘阵列性能更加优异)。当一个磁盘出现故障时,这个磁盘上的数据将被压缩到其他磁盘预留没有条带化的空间内,达到数据保护的作用,而这时候的RAID级别则从RAID 5E转换成了RAID 5,继续保护磁盘数据。RAID 5E允许两个磁盘出错,最少也需要4个磁盘才能实现RAID 5E。
2 ?1 R3 @- W) m4 d* n' [RAID 5EE8 M7 O- n6 r/ S! F v
RAID 5EE也是由IBM公司提出的一种私有RAID级别,它也没有成为国际标准。RAID 5EE的工作原理与RAID 5E基本相同,它也是在每个磁盘中预留一部分空间作为分布的热备盘,当一个硬盘出现故障时,这个磁盘上的数据将被压缩到分布的热备盘中,达到数据的保护作用。不过与RAID 5E不同的是RAID 5EE内增加了一些优化技术,使RAID 5EE的工作效率更高,压缩数据的速度也更快。RAID 5EE允许两个磁盘出错,最少需要4个磁盘实现。' F+ b v/ L. X
RAID 1E
' A; W; V j- C. hRAID 1E是RAID 1的增强版本,它并不是我们通常所说的RAID 0+1的组合。RAID 1E的工作原理与RAID基本上是一样的,只是RAID 1E的数据恢复能力更强,但由于RAID 1E写一分数据至少要两次,因此,RAID处理器的负载得到加强,从而造成磁盘读写能力的下降。RAID 1E至少需要3块硬盘才能实现。4 [- s6 E. e, H; h& T; S
RAID DP
) j& Z' Y8 G% }1 KRAID DP也属于一种私有的RAID标准,它实际上也就是双RAID 3技术,所谓双RAID 3技术主要是说在同一磁盘阵列中组建两个独立的不同算法的校验磁盘,在单校验磁盘下工作原理与RAID 3一样,但增加了一个校验盘之后,则使整个磁盘阵列的安全性得到提高,并且它的性能比RAID 3和RAID 5都要好。4 k, k; M0 y3 o Y: m
RAID ADG2 g' I$ Q; h. c; t/ K
RAID ADG相当于双RAID 5技术,是HP提出来的一种RAID技术。这种技术部署了2个奇偶校验集,并提供了2个硬盘的容量存储这些奇偶校验信息,能同时允许2块硬盘出现故障,有效提升了磁盘内数据的可靠性。不过这种技术会严重影响系统速度,所以并没有得到推广。+ h0 g4 l; j4 G6 s
* ~) ~6 G, q# z( C0 e' a
8 e# E5 Q1 }, Q! X- T2 N: H) | |
|