磁盘阵列技术简介作者:中智YS


>  磁盘阵列(DiscArray)是由许多台磁盘机或光盘机按一定的规则,如分条(Striping> )、分块(Declustering)、交叉存取(Interleaving)等组成一个快速,超大容量的外> 存储器子系统。它在阵列控制器的控制和管理下,实现快速,并行或交叉存取,并有较强> 的容错能力。从用户观点看,磁盘阵列虽然是由几个、几十个甚至上百个盘组成,但仍可> 认为是一个单一磁盘,其容量可以高达几百~上千千兆字节,因此这一技术广泛为多媒体> 系统所欢迎。      盘阵列的全称是:RedundanArrayofInexpensiveDisk,简称RAID技术。它是1988年由> 美国加州大学Berkeley分校的DavidPatterson教授等人提出来的磁盘冗余技术。从那时起> ,磁盘阵列技术发展得很快,并逐步走向成熟。现在已基本得到公认的有下面八种系列。> RAID如何实现数据存储的高稳定性呢?我们不妨来看一下它的工作原理。RAID按照实现原理的不同分为不同的级别,不同的级别之间工作模式是有区别的。整个的RAID结构是一些磁盘结构,通过对磁盘进行组合达到提高效率,减少错误的目的,不要因为这么多名词而被吓坏了,它们的原理实际上十分简单。问了便于说明,下面示意图中的每个圆饼代表一个磁盘,竖的叫块或磁盘阵列,横称之为带区。> 简单点说,RAID的功能就是把多个硬盘组合成为一个逻辑磁区,因此,操作系统只会把它当作一个硬盘。RAID系统的类型有多种方式,如RAID-0,RAID-1,RAID-2,RAID-3,RAID-4,RAID-5,RAID-6,RAID-10,RAID-53等。下面我们分别来看看这些RAID类型的区别以及用途:> >  1.RAID0(0级盘阵列) >>  RAID0又称数据分块,即把数据分布在多个盘上,没有容错措施。其容量和数据传输率 是单机容量的N倍,N为构成盘阵列的磁盘机的总数,I/O传输速率高,但平均无故障时间 MTTF(MeanTimeToFailure)只有单台磁盘机的N分之一,因此零级盘阵列的可靠性最差。 RAID0是具有提速和扩容的目的 在RAID0模式中,数据被分割为一定数量的数据块(Chunk)交叉写在多个硬盘上,一般的来说在RAID0系统中数据被分割的数量同RAID阵列所使用的硬盘的数量是有关的,比如RAID0中采用了3块硬盘,那么数据将会被分为三份依次的写入三个硬盘,通俗的说这种模式其实就是利用RAID技术让系统认为三块硬盘组成一个容量更大的硬盘,因为这个过程没有数据校验所以这种RAID模式是读写速度最快的一种。 >  2.RAID1(1级盘阵列) >>>  RAID1又称镜像(Mirror)盘,采用镜像容错来提高可靠性。即每一个工作盘都有一个 镜像盘,每次写数据时必须同时写入镜像盘,读数据时只从工作盘读出。一旦工作盘发生 故障立即转入镜像盘,从镜像盘中读出数据,然后由系统再恢复工作盘正确数据。因此这 种方式数据可以重构,但工作盘和镜像盘必须保持一一对应关系。这种盘阵列可靠性很高 ,但其有效容量减小到总容量一半以下。因此RAID1常用于对出错率要求极严的应用场合, 如财政、金融等领域。 RAID1的优点:数据高可靠性,易于实现,设计简单。 RAID1的缺点:比RAID0相比速度较慢,特别是写入速度,另外就是我们仅仅能使用一半的硬盘容量。 >  3.RAID2(2级盘阵列)>>   RAID2又称位交叉,它采用汉明码作盘错检验,无需在每个扇区之后进行CRC (CyclicReDundancycheck)检验。汉明码是一种(n,k)线性分组码,n为码字的长度,k 为数据的位数,r为用于检验的位数,故有:n=2r-1r=n-k     因此按位交叉存取最有利于作汉明码检验。这种盘适于大数据的读写。但冗余信息开 销还是太大,阻止了这类盘的广泛应用。 >  4.RAID3(3级盘阵列)>>   RAID3为单盘容错并行传输阵列盘。它的特点是将检验盘减小为一个(RAID2校验盘为 多个,DAID1检验盘为1比1),数据以位或字节的方式存于各盘(分散记录在组内相同扇区 号的各个磁盘机上)。它的优点是整个阵列的带宽可以充分利用,使批量数据传输时间减 小;其缺点是每次读写要牵动整个组,每次只能完成一次IO.    >  5.RAID4(4级盘阵列)>>   RAID4是一种可独立地对组内各盘进行读写的阵列。其校验盘也只有一个。   RAID4和RAID3的区别是:RAID3是按位或按字节交叉存取,而RAID4是按块(扇区)存 取,可以单独地对某个盘进行操作,它无需象RAID3那样,那怕每一次小I/O操作也要涉及 全组,只需涉及组中两台磁盘机(一台数据盘,一台检验盘)即可。从而提高了小量数据 的I/O速率。    >  6.RAID5(5级盘阵列) >>  RAID5是一种旋转奇偶校验独立存取的阵列。它和RAID1、2、3、4各盘阵列的不同点, 是它没有固定的校验盘,而是按某种规则把其冗余的奇偶校验信息均匀地分布在阵列所属 的所有磁盘上。于是在同一台磁盘机上既有数据信息也有校验信息。这一改变解决了争用 校验盘的问题,因此DAID5内允许在同一组内并发进行多个写操作。所以RAID5即适于大数 据量的操作,也适于各种事务处理。它是一种快速,大容量和容错分布合理的磁盘阵列. RAID5使用至少三块硬盘来实现阵列,它既能实现RAID0的加速功能也能实现RAID1的备份数据功能,在阵列当中有三块硬盘的时候,它将会把所需要的存储的数据按照用户定义的分割大小分割成文件碎片存储到两块硬盘当中,此时,阵列当中的第三块硬盘不接收文件碎片,它接收到的是用来校验存储在另外两块硬盘当中数据的一部分数据,这部分校验数据是通过一定的算法产生的,可以通过这部分数据来恢复存储在另外两个硬盘上的数据。另外,这三块硬盘的任务并不是一成不变的,也就是说在这次存储当中可能是1号硬盘和2号硬盘用来存储分割后的文件碎片,那么在下次存储的时候可能就是2号硬盘和3号硬盘来完成这个任务了。可以说,在每次存储操作当中,每块硬盘的任务是随机分配的,不过,肯定是两块硬盘用来存储分割后的文件碎片另一块硬盘用来存储校验信息。 RAID5的随机读取性能:非常好(当使用大数据块时) RAID5的随机写入性能:一般,但是优于RAID3或都RAID4 RAID5的持续读取性能:好(当使用小数据块时) RAID5的持续写入性能:一般 RAID5的优点:不需要专门的校验码磁盘,读取速度快,而且解决了写入速度相对较慢的问题。 RAID5的缺点:写入性能依然不尽如人意。 >  7.RAID6(6级盘阵列)>>   RAID6是一种双维奇偶校验独立存取的磁盘阵列。它的冗余的检、纠错信息均匀分布在 所有磁盘上,而数据仍以大小可变的块以交叉方式存于各盘。这类盘阵列可容许双盘出错 。 >  8.RAID7(7级盘阵列)>>   RAID7是在RAID6的基础上,采用了cache技术,它使得传输率和响应速度都有较大的提 高。Cache是一种高速缓冲存储器,即数据在写入磁盘阵列以前,先写入cache中。一般采 用cache分块大小和磁盘阵列中数据分块大小相同,即一块cache分块对应一块磁盘分块。 在写入时将数据分别写入两个独立的cache,这样即使其中有一个cache出故障,数据也不 会丢失。写操作将直接在cache级响应,然后再转到磁盘阵列。数据从cache写到磁盘阵列 时,同一磁道的数据将在一次操作中完成,避免了不少块数据多次写的问题,提高了速度 。在读出时,主机也是直接从cache中读出,而不是从阵列盘上读取,减少与磁盘读操作次 数,这样比较充分地利用了磁盘带宽。   这样cache和磁盘阵列技术的结合,弥补了磁盘阵列的不足(如分块写请求响应差等缺 陷),从而使整个系统以高效、快速、大容量、高可靠以及灵活、方便的存储系统提供给 用户,从而满足了当前的技术发展的需要,尤其是多媒体系统的需要。


时间:2008-12-17 分类:Computer

友荐云推荐

亲,你怎么看?