深度探究磁盘阵列Cache算法精确测评系统

2011-05-14 16:51孙花
卷宗 2011年9期
关键词:磁盘阵列

孙花

摘 要:磁盘阵列的Cache算法是一种较为实用的提高磁盘工作效率的算法,而其设计的差异往往会影响其效果,因此利用仿真测评的系统完成对其测定并获得改进依据。

关键词:磁盘阵列;Cache算法;测试系统组成;测试流程

一、磁盘阵列的基本概念简述

1、磁盘阵列

所谓的磁盘阵列就是RAID技术吗,此种技术是在多个磁盘机或者光盘机上按照一定的规律对信息进行分散的方法。其使用磁盘条、磁盘镜像、带有奇偶校验的磁盘条之类的技术进行组合,形成一个大容量而快速的外接存储系统,以此实现系统的冗余性能,降低所需要的潜伏时间增加磁盘的读写性能,从而提高硬盘崩溃后的数据恢复能力。整个系统在阵列控制器的管理和监控下实现快速而复杂的存储过程,并具备较强的容错能力。从用户的角度看,磁盘阵列组成的磁盘就是一个硬盘结构,用户的操作可以与硬盘一样进行分区格式化等,二者的区别在磁盘阵列的存储速度要快于硬盘,同时可以提供自动化的数据备份,因此得到了多媒体技术广泛应用。

2、形成动力

磁盘阵列技术的产生是随着中央处理器的处理速度增加而引发的,在CUP和内存处理速度的增加,用于数据存储的硬盘相对速度却明显滞后,从而造成了整个计算机系统速度运行不相匹配的情况,造成了技术发展的瓶颈,降低了整个系统的性能,因此提高磁盘的存储效率就成为了计算机发展的新课题。所以利用有限的磁盘资源提高其存储速度同时防止出现故障而丢失数据就成了计算机研究的方向,此时磁盘阵列技术的出现就解决了提高存储速度的问题,从而利用有限的磁盘空间获得较高的处理速度,进而平衡了计算机的整体性能。

3、磁盘阵列的硬件和软件技术

从磁盘阵列技术的应用中可以划分为硬件磁盘阵列和软件磁盘阵列两种。硬件磁盘阵列主要是基于硬件设备,系统独立于主机之外从而利用独立的管理模式对磁盘进行管理,内置的CPU与主机进行同步动作,所有的I/O都在阵列中完成,以此降低了主机的负担,增加了系统的整体性能。利用总线控制与专属通道完成对数据处理的加速,在主机中只用一个磁盘代表一组阵列;软件磁盘阵列实质是一个程序,在内核磁盘编码中实现不同的磁盘阵列技术,因此其不需要外接独立的设备可以降低系统构建的成本,是一种经济型解系统速度的方法。其缺点也十分明显,就是相对的增加了主机的负担,对于输入输出量较大的系统而言容易形成死机。

二、磁盘阵列的Cache算法的精确测评系统

在磁盘阵列技术中采用Cache的技术可以显著降低对磁盘的访问次数,提高其单次读写的性能,可以提高磁盘的使用寿命。设计优秀的Cache算法对于系统的计算速度是十分有帮助的,因此如何评价其效果就成为了一个磁盘阵列的重要课题,也是在实际中需要解决的问题。

1、评价方法

在相关问题中,磁盘阵列的计算方法几乎是决定整系统成败的基本因素,尤其是针对硬件磁盘阵列而言,Cache的算法也就可以决定系统的性能,因此评价算法的目的是:确定算法在指定应用中的效果;为计算方法的选择和改进提供依据;为算法的优化提供必要的数据支持。此外,对Cache算法进行评价的主要措施有以下几种:数学法,即利用数学建模完成;实测法在产品上进行测算;仿真法,建立仿真环境进行测试。数学法实现起来并不容易,其最大的难点就是精确性没有确实的标准;而实测法的成本较高。因此采用仿真试验进行测定是比较实用的方式。

2、测评目的

为了对Cache算法进行准确的测评首先就需要规定其需要达到的目的,赐个目标就是保证精确测评和正确评估。具体的目标可以界定为:产生多个形式的FO负载下操作;模拟相应的磁盘阵列的Cache的管理流程;对Cache命中进行记录进而评价其效果;记录每次费命中的读写操作的准确时间,进而计算出现错误的概率。

3、测评系统结构

1)系统组成

本系统是利用仿真计算对Cache算法进行测评,其主要有的构成有:I/O排队产生装置、Cache算法插槽、Cache预取算法、磁盘仿真四个部分构成。主要的系统功能如下:

读写发送器、I/O排队产生装置:此设备的作用是产生连续的I/O和随机I/O。在测评中产生连续读写的工作流,同时也产生随机读写的工作流,其方法是将给定介质的容量进行折算形成K块,在0-K之间产生一个读数作为起点,并假定其长度为一块长度。在实际中存储系统的运行中会出现两种不同的读写类型,即连续和随机两种。测试中通过模块作用可以将多种类型的I/O操作方式注入到系统中,进而形成一个对实际操作过程的回放。读写I/O列队产生装置生产读写I/O的队列并进行管理控制。

Cache的计算框架主要就是保证系统在测试中符合Cache系近似模拟。

磁盘仿真装置,其作用就是对每次读写进行时间上的精确仿真,其方式是按照成熟的仿真技术措施来实现。

2)测评的流程

具体实现的步骤如下:首先,读写发生装置产生一个读写工作流,每个读写的过程都带有其特定的数据信息,包括一个逻辑地址、数据长度、数据标记。其逻辑地址代表的是此次读写的源地址,而标记则可以显示其属性信息。然后将信息传输到I/O队列产生装置上;其次,在读写I/O队列产生装置上根据读写发生器的信息对工作流提出读写要求,并将读写的内容进行排序,并按照先入先出的方式将请求发送到Cache替换算法的插槽上。第三,Cache替换算法插槽接收到数据处理的请求,并进行处理。先对请求的格式进行审核,检测其命中,如命中则完成工作流继续测试,如错误则执行Cache预取算法。最后,Cache预取算法的数量记录和记录,此时预取算法确定读取块的数量,然后调用相关程序完成仿真读写。系统会记录模块中每次I/O处理的详细过程,记录有辅助系统完成统计并形成相应的仿真结论,至此就完成对系统的测试。

3)测试结果的计算

完成仿真测试后就会得到相应的统计数据,而评价Cache算法的主要标准就是命中率和平均相应的时间。在最后利用统计的数据通过公式计算就可以获得这两相应的参数,由此评价Cache算法设计的优劣。其中命中率所需要的参数是命中数量和整体读写数量;而平均响应时间则与处理耗时与每次处理的时间相关。

三、结束语

磁盘阵列的技术主要是为了提高有限磁盘空间所可以达到的处理数据的能力,此种技术是在CUP、内存计算速度大幅提高的情况下应运而生的,在实际的应用中有软件和硬件磁盘阵列两种实现方式,而其中采用何种计算方式对出现进行处理就成为了其技术的核心问题。Cache算法是一种较为实用的数据处理算法,但是其设计的方式也存在差异,如何对其进行测评就成为了利用Cache算法提高磁盘阵列计算效率的重要问题。经过前面的论述,不难看出:利用仿真方式构建一个简单的读写工作流可以获得较为准确的系统数据,并利用此对Cache算法的适应性进行分析,以此获得较好的测评结果。

参考文献

[1]詹玲,彭海云,万继光.磁盘阵列系统的Cache算法设计与实现[J].小型微型计算机系统,2009,(09)

[2]陈华英.磁盘阵列RAID可靠性分析[J].电子科技大学学报,2006,(03)

[3]刘志强,张泽军.磁盘阵列控制器故障主动处理系统[J].西北工业大学学报,2010,(05)

[4]徐征,张利华,余池美.磁盘阵列的缓冲命中率的研究[J].微电子学与计算机,2009,(12)

[5]莫正彦,冯太明,陈贵海.磁盘阵列的Cache算法应用分析[J].计算机应用研究,2008,(01)

猜你喜欢
磁盘阵列
浅论视频监控系统存储技术的发展
从存储技术看视频监控系统的历史变迁
军队院校图书馆服务器及存储设备的管理与维护
更换磁盘阵列磁盘
电视播出机房磁盘阵列预防性维护
一例EMS磁盘阵列故障分析及改进