IDE教学课程(二):
RAID的性能与数据安全
文章内容
IDE教学课程(二):
RAID的性能与数据安全
已创建:
八月 18, 2002
作者:
Patrick Schmid
类别:
存储指南
小结:
数年前,IDE硬盘只是储存数据的硬件,但现在有了便宜的RAID控制卡,你可以同时连接数个硬盘,组成一个新的大硬盘。RAID 0会将数据平均分散在所有硬盘上,让传输速率倍增;相反的RAID 1则将同一数据同时写入两个硬盘,以增加数据的安全性。
前言
自有计算机以来,其性能就一直是人们所追求的目标。尤其在这不断加速的时代,硬盘的影响要比很多人想象中来得大。Windows操作系统提供了数种优化性能的方法,但硬盘仍有其先天上的限制。使用多个硬盘同时工作可以有效的改善性能问题。
这里所说的技术叫做RAID(Redundant Array of Independent Disk Drives,独立磁盘冗余阵列)。简单的说,我们把数个硬盘组合起来成为一颗硬盘,以增加数据的传输效率,并提高数据安全性。视硬盘数目而定,你可以有多种选择,以达成以下目标:追求高安全性、追求性能、或是两者兼具。要使用不同模式的磁盘阵列,除了硬盘以外,还需要购买相对应的RAID控制卡。这些卡多半可以插进所有计算机的PCI插槽,甚至已经内建在主板上。
选择硬盘时有两点要注意:磁盘空间与转速。目前的磁盘驱动器接口不是UltraATA/100就是UltraATA/133,速度够快了。高转速提供了最大传输效率,以及最小存取时间;但也伴随着高热与噪音等缺点。RAID可以使用任何硬盘;本篇文章将简介这些技术,并着重在这些技术的一些重要细节上。
IDE教学课程(二):
RAID的性能与数据安全
文章内容
IDE教学课程(二):
RAID的性能与数据安全
已创建:
八月 18, 2002
作者:
Patrick Schmid
类别:
存储指南
小结:
数年前,IDE硬盘只是储存数据的硬件,但现在有了便宜的RAID控制卡,你可以同时连接数个硬盘,组成一个新的大硬盘。RAID 0会将数据平均分散在所有硬盘上,让传输速率倍增;相反的RAID 1则将同一数据同时写入两个硬盘,以增加数据的安全性。
入门:存取时间与数据传输率
新一代硬盘的容量将创新高,达200 GB;这是我们两年前无法想象的。
除了这个以外,有两项因素影响硬盘的性能,「存取时间(access time)」与「数据传输率(data transfer rate)」,这两个名词皆望文生义,很好解释。「存取时间」愈短愈好,指得是当我们对硬盘发出读写的请求时,硬盘完成所有动作的时间。由于硬盘每天都有着成千上万次的读写动作,这项因素就显得格外重要,尤其是在使用者常常读写小量数据时。顺道一提,常常我们买硬盘时,会听到「寻道时间(seek time)」,它与「存取时间」无关,时间也极短,两者基础完全不同,无法相提并论。
第二项因素是「数据传输率」,通常它与数据密度(用来描述单位空间所能储存的数据量,或每碟多少GB)与「硬盘转速(rotational speed)」有关。数据间的距离愈短,通过读写头的速度愈快,每个单位时间内的读写量就愈多。
而事实上,「硬盘转速」也对「存取时间」影响很大,因为读取下一笔数据间的空档减少了。多装设缓冲区(也就是所谓的「高速缓存(cache)」)也能大幅提升效率,目前的IDE硬盘多配有2 MB的缓存,有些甚至多达8 MB。最后值得一提的,则是硬盘的电路设计,由于它负责完成所有的工作,所以在有大量请求的情况下,更能显出其长处或缺陷。
与多数计算机周边不同的,是硬盘的性能无法调节,或说「超频(overclocking)」。你可以选用一些软件工具,但这些工具多半只是让你降低硬盘的噪音,或是整理文件碎片以增进性能而已。
IDE教学课程(二):
RAID的性能与数据安全
文章内容
IDE教学课程(二):
RAID的性能与数据安全
已创建:
八月 18, 2002
作者:
Patrick Schmid
类别:
存储指南
小结:
数年前,IDE硬盘只是储存数据的硬件,但现在有了便宜的RAID控制卡,你可以同时连接数个硬盘,组成一个新的大硬盘。RAID 0会将数据平均分散在所有硬盘上,让传输速率倍增;相反的RAID 1则将同一数据同时写入两个硬盘,以增加数据的安全性。
追求更多容量
要增加计算机存储容量,最直接的方法就是多用几个硬盘。通常只要加一个硬盘,就可以让系统性能提升一点。就Windows操作系统而言,加上第二个硬盘之后,你可以把耗带宽的交换文件(swap file,即所谓的「虚拟内存(virtual memory)」)移到这个硬盘上,好与系统文件隔开来。举例来说,执行像Photoshop这一类的应用程序,不把交换文件与系统文件隔开,其速度会慢得让人受不了。
但是,更能增进性能的方式莫过于使用RAID。RAID中的硬盘不是独立运行,而是统一由RAID控制卡指挥。
那RAID到底是如何运行的呢?
建立一个磁盘阵列要从RAID控制卡本身的BIOS开始,把一个个的硬盘加入阵列中。视RAID控制卡、区块大小(block size)、以及硬盘大小的不同,初始化的过程可以花上数个小时。设定区块大小值得我们注意,较大的区块大小可以提供较高的传输效率;但如果你的文件都不太大(小于区块大小),就会造成空间的浪费。一个64 KB的区块就是64 KB,即使你的文件只有1 KB,还是占用了64 KB的大小。
在启动了操作系统之后,接下来要做的就是格式化。在Windows下的「快速格式化(Quick Format)」几乎花不到多少时间;而「完整的格式化(Full Format)」则会检查每个扇区,花上不少时间。在重新启动计算机后,这个磁盘阵列就会被视为一个新的磁盘驱动器,使用上跟单个硬盘没有两样。
IDE教学课程(二):
RAID的性能与数据安全
文章内容
IDE教学课程(二):
RAID的性能与数据安全
已创建:
八月 18, 2002
作者:
Patrick Schmid
类别:
存储指南
小结:
数年前,IDE硬盘只是储存数据的硬件,但现在有了便宜的RAID控制卡,你可以同时连接数个硬盘,组成一个新的大硬盘。RAID 0会将数据平均分散在所有硬盘上,让传输速率倍增;相反的RAID 1则将同一数据同时写入两个硬盘,以增加数据的安全性。
RAID:各种模式的比较
RAID 0:Striping(条带)
就技术上来说,这模式根本无法符合RAID的精神,因为它没有冗余地记录任何数据。这也表示RAID 0不能保证任何数据的安全。所有数据会被平均分散的储存在所有硬盘上,这个阵列被称为「条带集(stripe set)」,这方法也被称为「拉链法(zipper method)」。它的优点非常明显,由于数据分散在多个硬盘上,传输速率会以硬盘的数目倍增,上限为传输通道的最大值(例如在UltraATA/100的计算机上,速度为100 MB/s),或是PCI总线的最大值(以66 MHz、32位的计算机来说,速度为266 MB/s)。然而,这项速度上的优势却牺牲了数据安全性,除非你能保证所有的硬盘都不会出问题。如果任何一个硬盘坏掉,那你会失去所有数据。
RAID 1:磁盘镜像
而RAID 1则完全与RAID 0相反,不追求高性能,而以数据安全性优先。在读写时,所有阵列中的硬盘都会一起动作,读写相同的数据,所以一份数据会有两个的备份,而且保证是最新的数据。
RAID 2:Striping
RAID 2采用了与RAID 0相同的方法,「条带集」会将数据分散在所有硬盘上;但它不是以区块的方式作分散,而是以位(bit)的方式来作。这是因为在存取数据时,RAID 2还加入了ECC(Error Correcting Code)校验码,这些校验码会记录在额外的硬盘上。如果你要确保数据的完整性,那就需要10个数据硬盘,以及4个ECC硬盘。如果要再高一个等级,那就要用到32个数据硬盘,以及7个ECC硬盘。这应该说明了RAID 2未曾流行过的原因。
由于RAID 2使用了以位为基础的「条带集」,所以性能只有二流的表现。如果存取的次数愈多、存取的数据愈短,那RAID 2的表现就愈差。
RAID 3:数据条带化,专门的奇偶校验盘
RAID 3加入了更细致的错误检查方法,数据是以字节(byte)的方式分配到每个硬盘里面去,而奇偶校验码则存在一个单独的硬盘中。但这也正是RAID 3的缺点,因为每次存取数据时,都要到另一个硬盘中去读取校验码;也因此组成磁盘阵列的本意,也就是增进性能这一点,反而被打了折扣。顺道一提,RAID 3最少需要3颗硬盘。
这模式需要非常复杂的控制卡,这也是RAID 3、4、5没有办法流行主流市场的原因。
RAID 4:数据条带化,专门的奇偶校验盘
RAID 4所使用的技术与RAID 3类似,但不是以字节的方式写入数据,而是区块(block)。理论上,这可以加快存取速度;但到另一颗硬盘中去读取校验码仍然是它的瓶颈。
RAID 5:分布式数据、分布式奇偶校验
RAID 5是公认在性能与数据安全上获得平衡的方式。不管是原始数据或是奇偶校验码,都平均的分散在所有硬盘中。它的速度只比RAID 3稍慢;但是安全性会受限,只容许一个硬盘损坏,如果有2个以上损坏,那所有数据都会遗失。要组成RAID 5,最少需要3个硬盘。
RAID 6:分布式数据、分布式奇偶校验
提到RAID 6,就跟提到RAID 5一样;只是奇偶校验的部分加倍而已。这会让性能再往下降一些;但容错能力则增加到两个硬盘损坏,也能运作无误。这模式最少需要5颗硬盘。
IDE教学课程(二):
RAID的性能与数据安全
文章内容
IDE教学课程(二):
RAID的性能与数据安全
已创建:
八月 18, 2002
作者:
Patrick Schmid
类别:
存储指南
小结:
数年前,IDE硬盘只是储存数据的硬件,但现在有了便宜的RAID控制卡,你可以同时连接数个硬盘,组成一个新的大硬盘。RAID 0会将数据平均分散在所有硬盘上,让传输速率倍增;相反的RAID 1则将同一数据同时写入两个硬盘,以增加数据的安全性。
RAID:该怎么搭建?
到目前为止,我们已经讨论过硬盘,却没有对它做深入详解。在设立RAID磁盘阵列时,原则上应该使用一样的硬盘,才能达到最高性能。
不过事实上,还是可以使用不同型号的硬盘;但整个RAID会以较小、较慢的硬盘为运作基础。例如说,在RAID 0数组中有一个30 GB、2个40 GB的硬盘,那么整个数组的大小为90GB,也就是最小那个硬盘的3倍。
同样的情形也发生在2台同样是40 GB,但转速分别为5,400与7,200转的硬盘上:整个数组会以低速的为准。要想让性能增加,换掉那台老旧的硬盘会有所帮助。
如果你用的是多台不同种类的硬盘,那还可以选择磁盘组(span array),又名JBOD(just a bunch of drives,就是一堆磁盘驱动器)。在这种情况中,所有的硬盘都会被串成一列,当作一台磁盘驱动器来用;但它无法提供任何性能,或是数据完整的好处。
另一个不稳定因素是该把硬盘接在哪一个IDE通道上。如果可能的话,每颗硬盘都该拥有自己的IDE通道,并且设为主盘(master)。在双通道的控制卡上,最好只接2个硬盘。虽然接满4个硬盘(每个通道接上2个硬盘,master与slave)应该可以增加性能,但还是比不上用4个通道连接4个硬盘快。
另一个问题是目前只有很少一些IDE RAID控制器支持ATAPI协议。CD-ROM与DVD-ROM都没有必要接在这些控制卡上(更不要去试RAID了)。
硬盘牺牲了!怎么办?
如果你以数据安全为出发点,选对了RAID的等级,那么当硬盘坏掉时,也可以高枕无忧。只要选用了RAID 1、3、4、5、6等模式,那么一颗硬盘坏掉并不会让数据受损。至于此时要采取的步骤,那就因RAID控制卡而异了。
目前大部分的RAID控制卡,会在硬盘损坏时用嘟嘟声、或电子邮件通知网管人员(当然啦,如果你的系统就安装在RAID 0上,那可就不保证这功能能运作正常了)。
如果你用的是较老或较简单的RAID控制卡,那么可能得先将计算机关机,才能更换坏掉的硬盘。重新启动计算机后,进入RAID卡的BIOS中,开始数据重建的过程。
事实上,目前市面上所有的控制卡,包括精简型的,都可以让你在不需要关机的情形下,直接更换硬盘:这叫做「热交换(hot swapping)」;同时数据重建的步骤也完全自动,啥事也不用做。
另一个功能叫做「热备品(hot-spare)」,许多控制卡能让你多接一个预备硬盘,当阵列中的某个硬盘坏掉了,这个预备硬盘就会马上激活,替代坏掉的那一个。
如果你用的是RAID 0或JBOD,而其中有个硬盘坏掉,那你可能再也不会想用这些模式了。虽然还是有办法找回数据,但代价昂贵。有些公司专门帮人救回宝贵的数据(例如OnTrack),不管是读写头损坏、火警、或是其它天灾,他们都会把硬盘拆解开来,救回大部分的数据。但值得注意的是,救回RAID磁盘阵列中的数据要比挽救单个硬盘来得麻烦,其价格也不是以倍数计算就可以了事。
结论是:
要常做备份!
IDE教学课程(二):
RAID的性能与数据安全
文章内容
IDE教学课程(二):
RAID的性能与数据安全
已创建:
八月 18, 2002
作者:
Patrick Schmid
类别:
存储指南
小结:
数年前,IDE硬盘只是储存数据的硬件,但现在有了便宜的RAID控制卡,你可以同时连接数个硬盘,组成一个新的大硬盘。RAID 0会将数据平均分散在所有硬盘上,让传输速率倍增;相反的RAID 1则将同一数据同时写入两个硬盘,以增加数据的安全性。
便宜地买到顶级容量
不过性能与数据安全不是我们唯一的考虑;在许多情形下,有大量的数据需要被管理与存放,解决这类问题的正确途径是使用大硬盘组成的RAID阵列。由于几年前,昂贵的SCSI适配卡与SCSI硬盘是唯一的选择,高容量的阵列只有公司与少数玩家用得起。
而现在,100 GB的硬盘要不了几百美元就买得到,跟廉价商品感觉差不多。只要花500美元,就可以拥有一个300~400 GB的磁盘阵列。新推出的硬盘容量甚至高达200 GB,用5颗硬盘就可以跨入1 TB(1000 GB)的境界,高贵而不贵。
混乱会带来麻烦
不管你用的是哪一种RAID模式,对操作系统来说,它仅仅是一个单个的硬盘,也同样需要维护。你每年应该做几次磁盘文件整理;如果是重运行量的磁盘阵列,那么应该每个月都做。为了方便起见,你可以将这烦人的工作放入任务计划中,让计算机自己去执行。
如果其中有颗硬盘开始哀嚎(发出奇怪的声音、性能变差、或是其它不祥的征兆),千万不要迟疑,开始备份重要的数据。如果你的操作系统安装在RAID阵列上,建议你将整个操作系统复制到另一台计算机上;否则的话,可能所有东西都得重装了。
IDE教学课程(二):
RAID的性能与数据安全
文章内容
IDE教学课程(二):
RAID的性能与数据安全
已创建:
八月 18, 2002
作者:
Patrick Schmid
类别:
存储指南
小结:
数年前,IDE硬盘只是储存数据的硬件,但现在有了便宜的RAID控制卡,你可以同时连接数个硬盘,组成一个新的大硬盘。RAID 0会将数据平均分散在所有硬盘上,让传输速率倍增;相反的RAID 1则将同一数据同时写入两个硬盘,以增加数据的安全性。
RAID控制卡:样式繁多
当购买RAID控制卡时,你大概有2种选择。精简型到处都买得到,甚至已经集成在主板上,其中包含2个IDE通道,支持RAID 0、1、10(条带与镜像),但如果不用RAID,也可以当成一般的ATA控制卡来用。
较复杂的控制卡会有自己的RISC处理器(例如i960),也可以另外安装高速缓存。有了这处理器,你就可以尝试奢侈的RAID模式,例如RAID 3与RAID 5–如果你的硬盘够多的话。
Adaptec
说到高品质的SCSI硬件,直觉上就会想到Adaptec;但它最近几年也开始跨足IDE市场。
双通道UltraATA/100:ATA RAID 1200A
RAID 0、1、10、JBOD、热交换、电子邮件通知
4通道UltraATA/100:ATA RAID 2400A
RAID 0、1、3、10、JBOD、热交换、电子邮件通知
HighPoint
在主板上看到HighPoint控制芯片的机率,会比看到其控制卡的机率要大:
双通道UltraATA/133:RocketRAID133
RAID 0、1、10、JBOD、热交换、电子邮件通知
4通道UltraATA/133:RocketRAID404
RAID 0、1、10、JBOD、热交换、电子邮件通知
LSI Logic
双通道UltraATA/100:Mega RAID IDE 100(原属于AMI公司)
RAID 0、1、10、JBOD、热交换、电子邮件通知
4通道UltraATA/100:Mega RAID i4
RAID 0、1、5、10、JBOD、热交换、电子邮件通知
不适合家用:Promise的SuperTrak SX6000支持RAID 5,并可以安装128 MB的高速缓存。
Promise(乔鼎)
Promise的产品在集成市场与零售市场都同样出色:
双通道UltraATA/133:FastTrak TX2000
RAID 0、1、10、JBOD、热交换、电子邮件通知
5通道UltraATA/133:FastTrak TX2000
RAID 0、1、3、5、10、JBOD、热交换、电子邮件通知
IDE教学课程(二):
RAID的性能与数据安全
文章内容
IDE教学课程(二):
RAID的性能与数据安全
已创建:
八月 18, 2002
作者:
Patrick Schmid
类别:
存储指南
小结:
数年前,IDE硬盘只是储存数据的硬件,但现在有了便宜的RAID控制卡,你可以同时连接数个硬盘,组成一个新的大硬盘。RAID 0会将数据平均分散在所有硬盘上,让传输速率倍增;相反的RAID 1则将同一数据同时写入两个硬盘,以增加数据的安全性。
没有RAID时的RAID
RAID 2、6一定要有RAID控制卡才能运作;而Windows 2000与Windows XP则以软件方式提供了RAID 0、1功能,只要你有足够的硬盘即可。
你可以在「计算机管理」中的「磁盘管理」改变分区或磁盘驱动器号,也可以选取2个以上的硬盘,组成一个软件RAID。
这篇文章
不须额外硬件的磁盘阵列:Windows 2000下自己动手做软RAID
告诉你,在Windows 2000或Windows XP下,如何设定软件RAID的方法。
RAID的限制
要解决长期的性能不足以及安全性问题,RAID无疑是个极佳的方法。但请容我们指出,它不能创造奇迹;如果你因为网管人员没有定期备份RAID上的数据,而造成数据遗失,那千万不要轻易地放过他们。
举例来说,RAID控制卡不能承受短路或雷击;这也表示在最坏的情形下,你的数据会像面包一样的被「烤焦」。所以在关键系统中,UPS(uninterruptible power supply,不断电系统)是必要的配备。
再者,RAID只能提供技术上的保障,可千万不要低估了人为疏失。许多人都有误删文件,又清空了回收站的经验,类似的状况也会在RAID上出现。
人为因素也包括了恶意的攻击,或是不当的软件问题(会将文件删除、格式化、更名、或是安全漏洞等),甚至是现实世界中的威胁(窃盗、野蛮的破坏、火警、洪水等等)。
千万别忘记,只有备份才能确保数据的安全。