磁盘阵列详解配置

上传人:人*** 文档编号:511188347 上传时间:2023-09-26 格式:DOCX 页数:16 大小:455.43KB
返回 下载 相关 举报
磁盘阵列详解配置_第1页
第1页 / 共16页
磁盘阵列详解配置_第2页
第2页 / 共16页
磁盘阵列详解配置_第3页
第3页 / 共16页
磁盘阵列详解配置_第4页
第4页 / 共16页
磁盘阵列详解配置_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《磁盘阵列详解配置》由会员分享,可在线阅读,更多相关《磁盘阵列详解配置(16页珍藏版)》请在金锄头文库上搜索。

1、磁盘阵列(Disk Array)1. 为什么需要磁盘阵列如何增加磁盘的存取(access)速度,如何防止数据因磁盘的故障而失落及如何有效的利用磁盘空间,一直是 电脑专业人员和用户的困扰;而大容量磁盘的价格非常昂贵,对用户形成很大的负担。磁盘阵列技术的产生 一举解决了这些问题。1过去十年来,CPU的处理速度增加了五十倍有多,内存(memory)的存取速度亦大幅增加,而数据储存装置一主 要是磁盘(hard disk)-的存取速度只增加了三、四倍,形成电脑系统的瓶颈,拉低了电脑系统的整体性能 (throughput),若不能有效的提升磁盘的存取速度,CPU、内存及磁盘间的不平衡将使CPU及内存的改进

2、形成 浪费。目前改进磁盘存取速度的的方式主要有两种。一是磁盘快取控制(disk cache controller),它将从磁盘读 取的数据存在快取内存(cache memory)中以减少磁盘存取的次数,数据的读写都在快取内存中进行,大幅增 加存取的速度,如要读取的数据不在快取内存中,或要写数据到磁盘时,才做磁盘的存取动作。这种方式在单 工环境(single-tasking environment)如DOS之下,对大量数据的存取有很好的性能(量小且频繁的存取则 不然),但在多工(multi-tasking)环境之下(因为要不停的作数据交换(swapping)的动作)或数据库 (database)

3、的存取(因为每一记录都很小)就不能显示其性能。这种方式没有任何安全保障。其二是使用磁 盘阵列的技术。磁盘阵列是把多个磁盘组成一个阵列,当作单一磁盘使用,它将数据以分段(striping)的方 式储存在不同的磁盘中,存取数据时,阵列中的相关磁盘一起动作,大幅减低数据的存取时间,同时有更佳的 空间利用率。磁盘阵列所利用的不同的技术,称为RAID level,不同的level针对不同的系统及应用,以解 决数据安全的问题。一般高性能的磁盘阵列都是以硬件的形式来达成,进一步的把磁盘快取控制及磁盘阵列结合在一个控制器 (RAID controller)或控制卡上,针对不同的用户解决人们对磁盘输出入系统的四

4、大要求:(1) 增加存取速度,(2) 容错(fault tolerance),即安全性(3) 有效的利用磁盘空间;(4) 尽量的平衡CPU,内存及磁盘的性能差异,提高电脑的整体工作性能。2. 磁盘阵列原理磁盘阵列中针对不同的应用使用的不同技术,称为RAID level, RAID是Redundant Array of Inexpensive Disks的缩写,而每一 level代表一种技术,目前业界公认的标准是RAID 0RAID 5。这个level并不代表技 术的高低,level 5并不高于level 3,level 1也不低过level 4,至于要选择那一种RAID level的产品, 纯

5、视用户的操作环境(operating environment)及应用(application)而定,与level的高低没有必然的关 系。RAID 0及RAID 1适用于PC及PC相关的系统如小型的网络服务器(network server)及需要高磁盘容 量与快速磁盘存取的工作站等,因为比较便宜,但因一般人对磁盘阵列不了解,没有看到磁盘阵列对他们价 值,市场尚未打开;RAID 2及RAID 3适用于大型电脑及影像、CAD/CAM等处理;RAID 5多用于OLTP,因有金 融机构及大型数据处理中心的迫切需要,故使用较多而较有名气,但也因此形成很多人对磁盘阵列的误解, 以为磁盘阵列非要RAID 5不

6、可;RAID 4较少使用,因为两者有其共同之处,而RAID 4有其先天的限制。其 他如RAID 6,RAID 7,乃至RAID 10等,都是厂商各做各的,并无一致的标准,在此不作说明。介绍各个RAID level之前,先看看形成磁盘阵列的两个基本技术:译为磁盘延伸,能确切的表示disk spanning这种技术的含义。如下图所示,DFTraid磁盘阵列控制器,联接 了四个磁盘:这四个磁盘形成一个阵列(array),而磁盘阵列的控制器(RAID controller)是将此四个磁盘视为单一的磁 盘,如DOS环境下的C:盘。这是disk spanning的意义,因为把小容量的磁盘延伸为大容量的单一

7、磁盘,用 户不必规划数据在各磁盘的分布,而且提高了磁盘空间的使用率。DFTraid的SCSI磁盘阵列更可连接几十 个磁盘,形成数十GB到数百GB的阵列,使磁盘容量几乎可作无限的延伸;而各个磁盘一起作取存的动作, 比单一磁盘更为快捷。很明显的,有此阵列的形成而产生RAID的各种技术。我们也可从上图看出 inexpensive(便宜)的意义,因为四个250MBbytes的磁盘比一个1GBytes的磁盘要便宜,尤其以前大磁盘的 价格非常昴贵,但在磁盘越来越便宜的今天inexpensive已非磁盘阵列的重点,虽然对于需要大磁盘容量的 系统,仍是考虑的要点。因为磁盘阵列是将同一阵列的多个磁盘视为单一的虚

8、拟磁盘(virtual disk),所以其数据是以分段 (block or segment)的方式顺序存放在磁盘阵列中,如下图:磁盘0磁盘1磁盘2磁盘3A0-A1A2-A3A4-A5A6-A7B0-B1B2-B3B4-B5B6-B7C0-C1C2-C3C4-C5C6-C7D0-D1D2-D3D4-C5D6-D7数据按需要分段,从第一个磁盘开始放,放到最後一个磁盘再回到第一个磁盘放起,直到数据分布完毕。至于 分段的大小视系统而定,有的系统或以1KB最有效率,或以4KB,或以6KB,甚至是4MB或8MB的,但除非数据 小于一个扇区(sector,即521bytes),否则其分段应是512byte的

9、倍数。因为磁盘的读写是以一个扇区为单 位,若数据小于512bytes,系统读取该扇区后,还要做组合或分组(视读或写而定)的动作,浪费时间。从上图 我们可以看出,数据以分段于在不同的磁盘,整个阵列的各个磁盘可同时作读写,故数据分段使数据的存取 有最好的效率,理论上本来读一个包含四个分段的数据所需要的时间约=(磁盘的access time +数据的 transfer time)X4次,现在只要一次就可以完成。若以N表示磁盘的数目,R表示读取,W表示写入,S表示可使用空间,则数据分段的性能为:R:N(可同时读取所有磁盘)W:N(可同时写入所有磁盘)S:N(可利用所有的磁盘,并有最佳的使用率)Disk

10、 striping也称为RAID 0,很多人以为RAID 0没有甚么,其实这是非常错误的观念,因为RAID 0使磁盘 的输出入有最高的效率。而磁盘阵列有更好效率的原因除数据分段外,它可以同时执行多个输出入的要求, 因为阵列中的每一个磁盘都能独立动作,分段放在不同的磁盘,不同的磁盘可同时作读写,而且能在快取内 存及磁盘作并行存取(parallel access)的动作,但只有硬件的磁盘阵列才有此性能表现。从上面两点我们可以看出,disk spanning定义了 RAID的基本形式,提供了一个便宜、灵活、高性能的系统 结构,而disk striping解决了数据的存取效率和磁盘的利用率问题,RAI

11、D 1至RAID 5是在此基础上提供 磁盘安全的方案。RAID 1RAID 1是使用磁盘镜像(disk mirroring)的技术。磁盘镜像应用在RAID 1之前就在很多系统中使用,它的 方式是在工作磁盘(working disk)之外再加一额外的备份磁盘(backup disk),两个磁盘所储存的数据完全 一样,数据写入工作磁盘的同时亦写入备份磁盘。磁盘镜像不见得就是RAID 1,如Novell NetWare亦有提 供磁盘镜像的功能,但并不表示NetWare有了 RAID 1的功能。一般磁盘镜像和RAID 1有二点最大的不同:RAID 1无工作磁盘和备份磁盘之分,多个磁盘可同时动作而有重叠

12、(overlapping)读取的功能,甚至不同的 镜像磁盘可同时作写入的动作,这是一种最佳化的方式,称为负载平衡(load-balance)。例如有多个用户在 同一时间要读取数据,系统能同时驱动互相镜像的磁盘,同时读取数据,以减轻系统的负载,增加I/O的性 能。RAID 1的磁盘是以磁盘延伸的方式形成阵列,而数据是以数据分段的方式作储存,因而在读取时,它几乎和RAID 0有同样的性能。从RAID的结构就可以很清楚的看出RAID 1和一般磁盘镜像的不同。下图为RAID 1,每一笔数据都储存两份磁盘0磁盘1磁盘0磁盘1从上图可以看出:R:N(可同时读取所有磁盘)W:N/2(同时写入磁盘数)S:N/

13、2(利用率) 读取数据时可用到所有的磁盘,充分发挥数据分段的优点;写入数据时,因为有备份,所以要写入两个磁盘, 其效率是N/2,磁盘空间的使用率也只有全部磁盘的一半。很多人以为RAID 1要加一个额外的磁盘,形成浪费而不看好RAID 1,事实上磁盘越来越便宜,并不见得造成 负担,况且RAID 1有最好的容错(fault tolerance)能力,其效率也是除RAID 0之外最好的。我们可视应用 的不同,在同一磁盘阵列中使用不同的RAID level,如华艺科技公司的DFTraid系列都可同一磁盘阵列中定 义八个逻辑磁盘(logic disk),分别使用不同的RAID level,分为C:,D:

14、及E:三个逻辑磁盘(或 LUN0,LUN1,LUN2).RAID 1完全做到了容错包括不停机(non-stop),当某一磁盘发生故障,可将此磁盘拆下来而不影向其他磁盘 的操作;待新的磁盘换上去之后,系统即时做镜像,将数据重新复上去,RAID 1在容错及存取的性能上是所有 RAID level 之冠。在磁盘阵列的技术上,从RAID 1到RAID 5,不停机的意思表示在工作时如发生磁盘故障,系统能持续工作而 不停顿,仍然可作磁盘的存取,正常的读写数据;而容错则表示即使磁盘故障,数据仍能保持完整,可让系统 存取到正确的数据,而SCSI的磁盘阵列更可在工作中抽换磁盘,并可自动重建故障磁盘的数据。磁盘阵

15、列之 所以能做到容错及不停机,是因为它有冗余的磁盘空间可资利用,这也就是Redundant的意义。RAID 2RAID 2是把数据分散为位元(bit)或块(block),加入海明码Hamming Code,在磁盘阵列中作间隔写入 (interleaving)到每个磁盘中,而且地址(address)都一样,也就是在各个磁盘中,其数据都在相同的磁道 (cylinder or track)及扇区中。RAID 2的设计是使用共轴同步(spindle synchronize)的技术,存取数据 时,整个磁盘阵列一起动作,在各作磁盘的相同位置作平行存取,所以有最好的存取时间(access time),其 总

16、线(bus)是特别的设计,以大带宽(band wide)并行传输所存取的数据,所以有最好的传输时间(transfer time)。在大型档案的存取应用,RAID 2有最好的性能,但如果档案太小,会将其性能拉下来,因为磁盘的存 取是以扇区为单位,而RAID 2的存取是所有磁盘平行动作,而且是作单位元的存取,故小于一个扇区的数据 量会使其性能大打折扣。RAID 2是设计给需要连续且大量数据的电脑使用的,如大型电脑(mainframe to supercomputer)、作影像处理或CAD/CAM的工作站(workstation)等,并不适用于一般的多用户环境、网络 服务器(network server),小型机或PC。RAID 2的安全采用内存阵列(memory array)的技术,使用多个额外的磁盘作单位错误校正

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号