一种磁盘阵列性能优化方法及系统的利记博彩app
【技术领域】
[0001]本发明涉及磁盘存储技术,尤其涉及一种预读缓存的磁盘阵列性能优化方法及系统。
【背景技术】
[0002]RAID5,RAID6等算法对条带内输入输出1的数据大小和连续性很敏感。如果磁盘阵列RAID条带内数据块大并且连续,则算法过程产生的额外读写1很少,性能高;如果raid条带内数据块小而且离散,则算法过程中产生的额外读写1很多,最坏的情况是外部1的4倍多,造成性能下降。如何将条带内数据拼接成大的、连续的发送给RAID处理,成为优化RAID性能的主要手段。
[0003]通常拼条带技术是在写缓存(W_cache)基础上做的。写缓存的拼条带效果由外部实际1数据在一定时间内的积累决定。写缓存拼条带的实际效果在很多情况下都效果不佳,如会出现条带内数据连续性很差,条带数据被分为很多小段,最差的情况是小段数据跨条块,导致一个1要拆分为条块内的两个1进行。如果对外部实际1拼条带的原始状态不做分析和优化,则RAID拼条带在实际使用中的性能提升有限。
【发明内容】
[0004]基于上述问题,本发明提供一种磁盘阵列性能优化方法及系统,采取预读的方法将离散的回写区间拼接为连续的回写区间,降低了磁盘阵列底层实际的额外1数,提高了石兹盘阵列的 1PS(Input/Output Operat1ns Per Second)性能。
[0005]根据上述目的,本发明提供了一种磁盘阵列性能优化方法,其特征在于,所述方法包括:
[0006]遍历磁盘阵列条带内的数据间隔区,如果存在多个数据间隔区,则判定进行预读,执行下一步;
[0007]设定预读区间,并生成预读任务;
[0008]对所述条带进行预读;
[0009]预读完成后,对预读填充后的连续区间进行回写。
[0010]其中,所述预读区间的大小设定为不超过所述条带内数据总和的大小。
[0011]其中,所述预读区间的大小设定为预读一次能够填补的数据区域大于一个数据包空白区。
[0012]根据本发明的另一个方面,提供一种磁盘阵列性能优化系统,其特征在于,所述系统包括:
[0013]判断单元,用于遍历条带内的数据间隔区,判断是否进行预读;
[0014]预读设定单元,用于设定预读区间,并生成预读任务;
[0015]预读单元,用于对所述条带进行预读;
[0016]回写单元,用于在预读完成后,对预读填充后的连续区间进行回写。
[0017]本发明的磁盘阵列性能优化方法及系统,通过判断预读能否优化磁盘阵列性能,采取预读的方法将离散的缓冲块拼接为连续的缓冲块,降低了磁盘阵列底层实际的额外1数,提高了磁盘阵列的1PS性能。
【附图说明】
[0018]通过参考附图会更加清楚的理解本发明的特征和优点,附图是示意性的而不应理解为对本发明进行任何限制,在附图中:
[0019]图1示出了本发明的磁盘阵列性能优化的方法的流程图。
[0020]图2示出了本发明的磁盘阵列性能优化系统的结构框图。
【具体实施方式】
[0021]下面将结合附图对本发明的实施例进行详细描述。
[0022]本发明的实施例的磁盘阵列性能优化方法,预先计算采用预读的方法,能否降低底层磁盘阵列的1次数,若能,则进行预读,将条带内离散的数据块填充为连续的整数据块。
[0023]图1示出了本发明的磁盘阵列性能优化的方法的流程图。
[0024]参照图1,本发明实施例的磁盘阵列性能优化方法具体包括:
[0025]SI,遍历磁盘阵列条带内的数据间隔区,如果存在多个数据间隔区,则判定进行预读,执行下一步;
[0026]S2,设定预读区间,并生成预读任务;
[0027]在本实施例中,预读区间的大小设定为不超过所述条带内数据总和的大小,或者预读区间的大小设定为预读一次能够填补的数据区域大于一个数据包空白区。
[0028]S3,对所述条带进行预读;
[0029]S4,预读完成后,对预读填充后的连续区间进行回写。
[0030]图2示出了本发明的磁盘阵列性能优化系统的结构框图。
[0031]本发明的另一个方面,提供一种磁盘阵列性能优化系统,所述系统包括:
[0032]判断单元10,用于遍历条带内的数据间隔区,判断是否进行预读;
[0033]预读设定单元20,用于设定预读区间,并生成预读任务;
[0034]预读单元30,用于对所述条带进行预读;
[0035]回写单元40,用于在预读完成后,对预读填充后的连续区间进行回写。
[0036]本发明的磁盘阵列性能优化方法及系统,通过判断预读能否优化磁盘阵列性能,采取预读的方法将离散的缓冲块拼接为连续的缓冲块,降低了磁盘阵列底层实际的额外1数,提高了磁盘阵列的1PS性能。
[0037]虽然结合附图描述了本发明的实施方式,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
【主权项】
1.一种磁盘阵列性能优化方法,其特征在于,所述方法包括: 遍历磁盘阵列条带内的数据间隔区,如果存在多个数据间隔区,则判定进行预读,执行下一步; 设定预读区间,并生成预读任务; 对所述条带进行预读; 预读完成后,对预读填充后的连续区间进行回写。
2.根据权利要求1所述的磁盘阵列性能优化的方法,其特征在于,所述预读区间的大小设定为不超过所述条带内数据总和的大小。
3.根据权利要求1所述的磁盘阵列性能优化的方法,其特征在于,所述预读区间的大小设定为预读一次能够填补的数据区域大于一个数据包空白区。
4.一种磁盘阵列性能优化系统,其特征在于,所述系统包括: 判断单元,用于遍历条带内的数据间隔区,判断是否进行预读; 预读设定单元,用于设定预读区间,并生成预读任务; 预读单元,用于对所述条带进行预读; 回写单元,用于在预读完成后,对预读填充后的连续区间进行回写。
【专利摘要】本发明涉及一种磁盘阵列性能优化方法及系统,所述方法包括:遍历磁盘阵列条带内的数据间隔区,如果存在多个数据间隔区,则判定进行预读,执行下一步;设定预读区间,并生成预读任务;对所述条带进行预读;预读完成后,对预读填充后的连续区间进行回写。本发明的方法采取预读的方法将离散的缓冲区间拼接为连续的缓存区间,降低了磁盘阵列底层实际的额外IO数,提高了磁盘阵列的IOPS性能。
【IPC分类】G06F3-06
【公开号】CN104778015
【申请号】CN201510059613
【发明人】李浩然
【申请人】北京神州云科数据技术有限公司
【公开日】2015年7月15日
【申请日】2015年2月4日