您当前位置:首页 > 新闻频道 > 技术动态 > 正文
磁盘阵列技术浅析(自动化)

磁盘阵列技术浅析(自动化)

                                 董进武,宋  

                      (海军装备部,陕西西安710043

 摘要:分析了RAIDRedundant Array of Independent Disks,冗余独立磁盘阵列)技术不同分级在确保数据的一致性、安全性及可靠性和提升数据的存储速度及可管理性方面各自的优缺点,同时根据不同RAID分级的特点,给出了RAID分级组合示例,并对比各组合性能。

关键词:磁盘阵列;冗余;存储技术;数据安全性

中图分类号:TN216  文章编号:1006 - 2394( 2016) 06 - 0031  - 03

0  引言

    RAID( Redundant Array of Independent Disks,冗余独立磁盘阵列)的构想最先是由加州柏克莱大学的David A PattersonGarth GibsonRandy H.  Katz1988年所提出的。RAID的目的在于将相同的资料存储在多个磁盘中的不同地方,并且改善存储子系统的效能。RAID能提供更好的生产效能及资料数据错误的容忍度。通过将工作量平行分散到多个实体磁盘中

可以达到较好的效能,当一个(或多个)磁盘发生问题时,可以在另一个磁盘中找到资料数据的映射拷贝,起到数据容错作用。RAID通过为数据提供校验的方式提高了可用性,在如今各类存储系统中,RAID已经成为不可或缺的重要组成部分,为保护数据发挥重要作用。

    由于CPU的速度增长很快,而磁盘驱动器的数据传输速率无法大幅提高,RAID成为解决这一问题的最佳之选。RAID通过在多个磁盘上同时存储和读取数据来大幅提高存储系统的数据吞吐量(Through-put)。在RAID中多个磁盘驱动器在逻辑上是一个整体,使用RAID可以达到单个磁盘驱动器传输速率的几倍、几十倍甚至上百倍的速率,这也是RAID最初想要解决的问题。

    通过数据校验,RAID可以提供容错功能,这是RAID的第二个特点。RAID容错是建立在每个磁盘驱动器的硬件容错功能之上的,所以它提供更高的安全性。在很多RAID模式中都有较为完备的相互校验/恢复的措施,甚至是直接镜像备份,从而大大提高了系统的容错度和冗余性。1 RAID分级技术

1.1RAID 0

    RAID Level 0是把一个文件分成几段分别放在各个硬盘上,数据块被交替写到磁盘中。第1段被写到磁盘1中,第2段被写到磁盘2中,依次往后,当系统写完阵列中的最后一个磁盘时,就转回写到磁盘1的下一分段,如图1所示。

磁盘阵列技术浅析(自动化)1143.png 

    由于硬盘分段的方法是把数据写入多个硬盘,因此它的速度比较快。实际上,数据的传输是顺序的,但多个读(或写)操作则可以相互重叠进行。这就是说,当段1在写入驱动器1时,段2写入驱动器2的操作也开始了;而当段2尚在写驱动器2时,段3数据已送驱动器3,如此类推,在同一时刻有多个盘在同时写数据。因为数据送入盘驱动器的速度要远大于写入物理盘的速度,因此只要根据这个特点编制出控制软件,就能实现上述数据同时写盘的操作。

    分段数据将I/O负载平均分配到所有的驱动器,由于驱动器可以同时读写,性能得以显著提高。但是,它却没有数据保护能力,不是提供冗余的数据,如果一个磁盘出故障,数据就会丢失,这是非常危险的。因为必须保证整个硬盘子系统都正常工作,计算器才能正常工作。

    RAID 0不适用于关键任务环境,但是,它却非常适合于视频生产和编辑或图像编辑,因为这些应用总是在存储数据;其他的应用还有高速的数据获取系统。

1.2  RAID 1

    RAID Level 1是磁盘镜像技术,写到磁盘1中的一切也写到磁盘2中,从任何一个磁盘都可以读取,如图2所示,它最重要的优点是百分之百的数据冗余。RAID 1通过简单地将一个盘上的所有数据拷贝到第二个盘上(或等价的存储设备上)来实现数据冗余,当一个盘驱动器发生故障,计算器系统仍能正常工作。这种方法虽然简单且实现起来相对较容易,但它的缺点是要比单个无冗余硬盘贵一倍。

磁盘阵列技术浅析(自动化)1755.png 

    RAID 1的另一个特点是,两个盘在任何时间都包含相同的数据,任何一个都可以当作工作盘。可以采用一些优化速度的方法,例如平衡读请求负荷。当多个用户同时请求读数据时,可以将请求分散到两个硬盘中去,使读负荷平均地分布在两个硬盘上,两个硬盘在同一时刻读取不同的数据片。但是硬盘镜像不能改善写数据的性能,被“镜像二,的硬盘也可被镜像到其他存储设备上,例如可擦写光盘驱动器,虽然以光盘作镜像盘没有用硬盘的速度快,但这种方法比没有使用镜像盘毕竟减少了丢失数据的危险性。

    总之,镜像系统容错性能非常好,并可以提高读数据的速度;它的缺点是需要双份硬盘,因此价格较高。RAID 1在多用户系统中提供最佳性能和容错能力,是最容易实施的配置,这最适用于财务处理、工资单、金融和高可用数据环境。

1.3    RAID 2

    RAID Level 2是为大型机和超级计算机开发的。它可在工作不中断的情况下纠正数据,但是,RAID 2倾向于较高的数据校验和纠错率。RAID的定义涉及错误校验电路,由RAID控制器执行。今天,这个功能已经被集成到磁盘驱动器中,因此,RAID 2实际上是不存在的。

1.4  RAID 3

    RAID Level 3使用单块磁盘存放奇偶校验码,如图3所示。它采用分段技术将数据按位或按字节分散记录在各个硬盘的相同扇区上,同时对存储的数据进行异或运算,产生校验数据,写到单独的校验盘上。RAID 3具有很高的可靠性及容错能力,但每次读写要牵动整个磁盘组,只能完成一次I/O,由于在存取的时候要进行数据的奇偶校验,RAID 3的工作速度比RAID O要慢。采用专用的奇偶校验盘,当同时产生多个写操作时,每次操作都要对奇偶盘进行写入,这将产生I/O瓶颈效应。

    RAID 3经常应用于写性能要求较高和大数据量的顺序访问环境中,如数据挖掘和多媒体/电影制作。图形学和CAD也常常拥有长的顺序访问文件,科学研究的数据获取系统也经常受益于RAID 3的写性能。

磁盘阵列技术浅析(自动化)2601.png 

1.5RAID 4

    它使用一个专用的校验磁盘。与RAID 3不同的是RAID 4的分块大得多,使多个I/O请求能同时被处理。虽然它为读请求提供了性能优势,但RAID 4的写开销特别大,因为在每次读写周期中,校验磁盘都被访问两次,这是一个双倍性能损失。由于这种类型缺乏对多种同时写操作的支持,因而几乎不使用。

1.6    RAID 5

    RAID 5把奇偶位信息分散分布在磁盘子系统的所有磁盘上,而不是使用专用的校验盘,这就改善了上述RAID 3中的奇偶盘瓶颈问题。图4说明了RAID 5的一种配置,图中奇偶信息散布在子系统的每个磁盘上,这种方法将提高磁盘子系统的事务处理速度。所谓事务处理,是指处理许多不同用户发出的多个磁盘I/O操作,由于可能同时有很多用户与磁盘打交道,有时几乎是同时向磁盘写入数据,这种情况下,用分布式奇偶盘的方式比用专用奇偶盘,瓶颈效应发生的可能性要小。

磁盘阵列技术浅析(自动化)3000.png 

    对磁盘操作来说,RAID 5的写性能比不上RAID0,因为产生或存储奇偶码需要一些额外操作。例如,在修改一个硬盘上的数据时,其他盘上对应段的数据(即使是无关的数据)也要读入主机,以便产生必要的奇偶信息。奇偶段产生后,要将更新的数据段和奇偶段写入硬盘,这通常称为读一修改一写策略。因此,虽然RAID 5RAID O优越,但就写性能来说,RAID 5不如RAID 0

    采用RAID 5时,如对于5个硬盘的盘组,有大约20%的硬盘空间用于存放奇偶码,而10个硬盘的数组只有约10%的空间存放奇偶码。在可用空间的意义上来说,硬盘系统中的硬盘越多,该系统就越省钱。

    总之,RAID 5把硬盘分段和奇偶冗余技术的优点结合在一起,这样的硬盘子系统特别适合于事务处理环境,例如民航售票处、汽车出租站、销售系统的终端等。在某些场合,可优先考虑RAID l(在那些写数据比读数据更频繁的情况),但许多情况下,RAID 5提供了将高性能、低价格和数据安全性综合在一起的解决办法。

1.7    RAID 6

    提供两级的冗余,即阵列中的两个驱动器失败时,阵列仍然能继续工作。它使用一种分配在不同的驱动器上的第二种奇偶方案,扩展了RAID 5。它能承受多个驱动器同时出现故障,但是,性能——尤其是写操作却很差,而且,系统需要一个极为复杂的控制器。到现在为止,市场上的RAID 6的实现相对较少。

1.8RAID 7

    每个磁盘都带有高速缓冲存储器,采用并行结构,数据访问速率大幅提高,但价格非常昂贵。

1.9分级性能比较

    总结RAID各个不同分级的特点,表1给出了常用的各级RAID性能比较。

磁盘阵列技术浅析(自动化)3711.png 

2复合RAID

    RAID不同级别可以组合成多种形式,从而获得更好的性能,如RAID 10RAID 50RAID 30RAID 53

    RAID 10是将磁盘镜像技术和分段技术相结合,每个磁盘都在RAID 0的基础上各带一个镜像盘;RAID 50是在RAID 0的基础上增加了分布式奇偶校验位;RAID30,即RAID 0RAID 3的组合,RAID 0以间隔分布的方式将数据分配到磁盘上,可提供更快的访问速度,但不能为数据提供很好地保护。因此,选用RAID 3来弥补这一缺陷,RAID 0RAID 3都是硬盘的并行输入输出,保持了较快的吞吐量,这样可以在RAID 0中获得快速资料存取的效益,在RAID3中获得很好的数据冗余特性。而且,用RAID 3替代RAID 1RAID 0组合,无需要用多出一倍的硬盘作为数据映射磁盘,更加经济,但需要进行校验计算,有写开销。

    5RAID 30的示例图,可以看到,数据按RAID 0分段存储在ABDE四个盘中,而CF作为校验盘,分别存储ABDE上数据的校验数据。三种组合的性能比较如表2所示。

磁盘阵列技术浅析(自动化)4206.png磁盘阵列技术浅析(自动化)4207.png 

3结束语

    RAID磁盘阵列的应用可极大地满足用户对海量数据存储的需要,将大大改善存储系统的性能。RAID磁盘技术已成为服务器及存储的主流技术,随着磁盘驱动器的价格的持续下降,使用校验技术的RAID技术在价格上的优势将逐渐削弱,而基于镜像的方案将成为主导技术。

关键字:

招商信息月点击排行

About Us - 关于我们 - 服务列表 - 付费指导 - 媒体合作 - 广告服务 - 版权声明 - 联系我们 - 网站地图 - 常见问题 - 友情链接
Copyright©2014安装信息网 www.zgazxxw.com. All rights reserved.
服务热线:0371-61311617 邮箱:zgazxxw@126.com 豫ICP备18030500号-4
未经过本站允许,请勿将本站内容传播或复制
安全联盟认证