用于为磁盘阵列分配缓存的设备和方法技术

技术编号:14866069 阅读:113 留言:0更新日期:2017-03-20 13:07
本发明专利技术公开了一种用于为磁盘阵列分配缓存的设备和方法。该方法包括:监视所述磁盘阵列在预定时间周期的I/O分布;确定所述磁盘阵列的垃圾回收状态,所述垃圾回收状态包括允许所述磁盘阵列进行垃圾回收以及不允许所述磁盘阵列进行垃圾回收;根据所述I/O分布和所述垃圾回收状态决定所述缓存的分配。根据本发明专利技术的设备和方法,能够平衡磁盘阵列忙时和闲时的缓存总量,并使得垃圾回收对磁盘I/O的影响最小化。

【技术实现步骤摘要】

本专利技术涉及磁盘阵列的
,更具体地,涉及一种用于为磁盘阵列分配缓存的设备和方法
技术介绍
目前,存储系统主要使用磁盘阵列,这些磁盘阵列中的每个磁盘阵列由多个磁盘组成。根据传统技术,在对进行读写(I/O)操作的磁盘阵列分配用于读写操作的高速缓冲存储器(以下简称为“缓存”)时,通常是基于静态的方法,即在某个时间段为某个磁盘阵列分配固定大小的缓存。近来,由基于NAND闪存的固态硬盘(SSD)作为磁盘来构成磁盘阵列是一个重要的趋势。在NAND闪存中,存贮单元被分成页,由页组成块。NAND型存贮单元的读、写是以块和/或页为单位来进行的,并且在将数据写入到页之前,必须先擦除该页中的内容。由于这种特性的存在,导致了传统的缓存分配技术对基于NAND闪存的磁盘阵列的系统性能产生了较大影响。
技术实现思路
在基于NAND闪存的磁盘中,在将数据写入到页之前,必须先擦除该页中的内容,这个过程称为垃圾回收。考虑到磁盘进行垃圾回收对该磁盘的读写(I/O)操作的性能的影响,本专利技术提出了一种新的分配缓存的机制,即根据磁盘阵列的I/O分布以及磁盘的垃圾回收状态来为磁盘阵列分配缓存。根据本专利技术的一个方面,提供了一种用于为磁盘阵列分配缓存的方法,该方法包括:监视所述磁盘阵列在预定时间周期的I/O分布;确定所述磁盘阵列的垃圾回收状态,所述垃圾回收状态包括允许所述磁盘阵列进行垃圾回收以及不允许所述磁盘阵列进行垃圾回收;根据所述I/O分布和所述垃圾回收状态决定所述缓存的分配。根据本专利技术的另一个方面,提供了一种用于为磁盘阵列分配缓存的设备,该设备包括:I/O分布监视器,被配置为监视所述磁盘阵列在预定时间周期的I/O分布;垃圾回收状态判定器,被配置为确定所述磁盘阵列的垃圾回收状态,所述垃圾回收状态包括允许所述磁盘阵列进行垃圾回收以及不允许所述磁盘阵列进行垃圾回收;缓存分配控制器,被配置为根据所述I/O分布和所述垃圾回收状态决定所述缓存的分配。根据本专利技术的再一方面,提供了一种用于为磁盘阵列分配缓存的计算机程序产品,所述计算机程序产品包括可由计算机读取并存储指令的存储介质,所述指令由所述计算机执行,以执行根据本专利技术的上述方面提供的为磁盘阵列分配缓存的方法的各步骤。根据本专利技术的设备和方法,能够平衡磁盘阵列忙时和闲时的缓存总量,并使得垃圾回收对磁盘I/O的影响最小化。附图说明通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。图1示出了适于用来实现本专利技术实施方式的示例性计算机系统/服务器12的框图。图2是示出根据本专利技术实施例的用于为磁盘阵列分配缓存的设备的示意性方框图。图3是示出根据本专利技术实施例的垃圾回收状态判定器判定垃圾回收状态的操作示例图。图4是示出根据本专利技术另一个实施例的基于垃圾回收级别确定垃圾回收状态的示意图。图5示出根据本专利技术实施例的多个磁盘阵列在一段时间内的IO分布以及垃圾回收状态的示例图。图6是示出根据本专利技术另一个实施例的用于为磁盘阵列分配缓存的设备的示意性方框图。图7是示出根据本专利技术一个实施例的垃圾回收控制器和缓存分配控制器之间进行垃圾回收和缓存分配的操作时序图。图8是示出根据本专利技术另一个实施例的垃圾回收控制器和缓存分配控制器之间进行垃圾回收和缓存分配的操作时序图。图9是示出根据本专利技术再一个实施例的垃圾回收控制器和缓存分配控制器的操作的图示。图10是示出根据本专利技术实施例的用于为磁盘阵列分配缓存的方法的流程图。具体实施方式下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。图1示出了适于用来实现本专利技术实施方式的示例性计算机系统/服务器12的框图。图1显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。如图1所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本专利技术各实施例的功能。具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本专利技术所描述的实施例中的功能和/或方法。计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等本文档来自技高网...
用于为磁盘阵列分配缓存的设备和方法

【技术保护点】
一种用于为磁盘阵列分配缓存的方法,包括:监视所述磁盘阵列在预定时间周期的I/O分布;确定所述磁盘阵列的垃圾回收状态,所述垃圾回收状态包括允许所述磁盘阵列进行垃圾回收以及不允许所述磁盘阵列进行垃圾回收;根据所述I/O分布和所述垃圾回收状态决定所述缓存的分配。

【技术特征摘要】
1.一种用于为磁盘阵列分配缓存的方法,包括:
监视所述磁盘阵列在预定时间周期的I/O分布;
确定所述磁盘阵列的垃圾回收状态,所述垃圾回收状态包括允许所述磁
盘阵列进行垃圾回收以及不允许所述磁盘阵列进行垃圾回收;
根据所述I/O分布和所述垃圾回收状态决定所述缓存的分配。
2.如权利要求1所述的方法,其中确定所述磁盘阵列的垃圾回收状态的
步骤包括:根据所述磁盘阵列的I/O分布、其它磁盘阵列的I/O分布、和/或
其它磁盘阵列的垃圾回收状态来确定所述磁盘阵列的垃圾回收状态。
3.如权利要求2所述的方法,其中确定所述磁盘阵列的垃圾回收状态的
步骤包括:响应于所述磁盘阵列的I/O分布处于以下状态之一,所述垃圾回
收状态为不允许所述磁盘阵列进行垃圾回收:
所述磁盘阵列的I/O分布处于忙状态以及数量超过第一阈值的其它磁盘
阵列的I/O分布也处于忙状态;
所述磁盘阵列的I/O分布处于忙状态、数量超过第一阈值的其它磁盘阵
列的I/O分布处于闲状态、以及数量超过第二阈值的其它磁盘阵列正在进行
垃圾回收;
所述磁盘阵列的I/O分布处于闲状态以及数量超过第三阈值的其它磁盘
阵列正在进行垃圾回收。
4.如权利要求2所述的方法,其中确定所述磁盘阵列的垃圾回收状态的
步骤包括:响应于所述磁盘阵列的I/O分布处于以下状态之一,所述垃圾回
收状态为允许所述磁盘阵列进行垃圾回收:
所述磁盘阵列的I/O分布处于忙状态、数量超过第一阈值的其它磁盘阵
列的I/O分布处于闲状态、以及数量超过第二阈值的其它磁盘阵列没有进行
垃圾回收;
所述磁盘阵列的I/O分布处于闲状态以及数量超过第三阈值的其它磁盘
阵列没有进行垃圾回收。
5.如权利要求1所述的方法,其中确定所述磁盘阵列的垃圾回收状态的
步骤包括:根据磁盘阵列的垃圾回收级别确定是否允许所述磁盘阵列进行垃
圾回收。
6.如权利要求1所述的方法,其中根据所述I/O分布和所述垃圾回收状
态决定所述缓存的分配的步骤包括:响应于所述磁盘阵列的I/O分布处于忙
状态并且允许进行垃圾回收,为该磁盘阵列分配最大的缓存。
7.如权利要求1所述的方法,其中根据所述I/O分布和所述垃圾回收状
态决定所述缓存的分配的步骤包括:响应于所述磁盘阵列的I/O分布处于闲
状态并且不允许进行垃圾回收,为该磁盘阵列分配最小的缓存。
8.如权利要求1所述的方法,该方法还包括:
接收垃圾回收请求信号;
查询所述垃圾回收状态;
响应于所述垃圾回收状态是允许所述磁盘阵列进行垃圾回收:
发送垃圾回收确认信号;
获得使用权利要求1-6之一所述的方法确定的要分配的缓存,并向所
述磁盘阵列分配该要分配的缓存。
9.如权利要求8所述的方法,该方法还包括:
响应于所述垃圾回收状态是不允许进行垃圾回收:
发送垃圾回收延迟信号;
将要清理的缓存的数据写入其他磁盘阵列;
响应于要清理的缓存的数据写入结束:
发送垃圾回收确认信号;
获得使用权利要求1-7之一所述的方法确定的要分配的缓存,并向所
述磁盘阵列分配该要分配的缓存。
10.如权利要求8或9所述的方法,该方法还包括:
响应于垃圾回收结束,将分配的缓存中的数据写入所述磁盘阵列。
11.一种用于为磁盘阵列分配缓存的设备,包括:
I/O分布监视器,被配置为...

【专利技术属性】
技术研发人员:高雪东陆昌平赵明志冯正圆
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1