一种数据块迁移方法及装置制造方法

文档序号:6625180阅读:163来源:国知局
一种数据块迁移方法及装置制造方法
【专利摘要】本发明公开了一种数据块迁移方法及装置,本发明中统计数据块的访问频率;判断访问频率是否达到进行数据块迁移的存储门限值;若访问频率达到进行数据块迁移的存储门限值,则判断访问频率是否在存储门限值的防抖区域范围值内;若访问频率不在述存储门限值的防抖区域范围值内,则将数据块迁移至符合数据块访问频率的存储介质中;若访问频率在存储门限值的防抖区域范围值内,则不迁移数据块。通过本发明能够避免访问频率发生微小变化的数据在不同存储介质之间频繁迁移,进而提高存储系统的业务性能。
【专利说明】一种数据块迁移方法及装置

【技术领域】
[0001]本发明涉及数据存储【技术领域】,尤其涉及一种数据块迁移方法及装置。

【背景技术】
[0002]数据分层存储技术作为数据存储【技术领域】的主流技术,能够满足以较低的价格满足数据分层存储系统的性能和容量需求。
[0003]数据分层存储技术主要包括数据块监控、数据块冷热识别和数据块迁移三部分。数据监控过程,主要是监控并记录数据块的访问频率等参数值,确定数据块的访问热度。数据冷热识别过程,主要是通过数据监控过程中确定的访问频率,识别出冷点数据块和热点数据块。数据块迁移过程,主要是对数据块冷热识别过程中识别出的冷点数据块和热点数据块,决定数据块应该存储在数据分层存储系统的哪一层,热点数据块可迁移到数据分层存储系统的高性能层级,冷点数据块可迁移到数据分层存储系统中的低性能层级。
[0004]目前数据分层存储系统中进行数据块迁移,将热点数据块迁移到高性能层级,冷点数据块迁移到低性能层级,一般采用如下过程:获取各存储介质中的数据块的访问频率,并对获取的访问频率进行排名,根据数据分层存储系统中各层级存储介质的容量以及各存储介质中的数据块的访问频率排名,确定性能等级相邻的存储介质边界的数据的访问频率,将该确定的位于相邻存储介质边界位置处的访问频率作为相邻存储介质的存储门限值。确定存储门限值后,判断数据块的访问频率是否达到相应的存储门限值,若达到,则进行数据块迁移,将数据块迁移到与访问频率相符合的相应层级的存储介质中并存储。
[0005]目前,进行数据快迁移过程中,对于访问频率位于相邻两个层级存储介质之间存储门限值附近的数据块,会随着访问频率的微小变化,使其适合迁移到另一种存储介质中,并频繁在两种存储介质之间移动。
[0006]对于上述访问频率发生微小变化,导致数据块频繁在两种存储介质之间移动的现象,会占用数据分层存储系统的系统资源,例如占用内存、带宽等,将影响存储系统的业务性能。


【发明内容】

[0007]本发明实施例提供一种数据块迁移方法及装置,以解决访问频率发生微小变化,导致的存储系统业务性能降低的问题。
[0008]第一方面,提供一种数据块迁移方法,应用于存储系统,所述存储系统包括性能等级不同的至少两种存储介质,所述方法包括:
[0009]统计所述数据块的访问频率;
[0010]判断所述访问频率是否达到进行数据块迁移的存储门限值;
[0011 ] 若所述访问频率达到进行数据块迁移的存储门限值,则判断所述访问频率是否在所述存储门限值的防抖区域范围值内,所述防抖区域范围值为防止数据块在不同存储介质之间进行迁移的存储门限值的变化范围区间值;
[0012]若所述访问频率不在所述存储门限值的防抖区域范围值内,则将所述数据块迁移至符合数据块访问频率的存储介质中;
[0013]若所述访问频率在所述存储门限值的防抖区域范围值内,则不迁移所述数据块。
[0014]结合第一方面,在第一种实现方式中,所述方法还包括:
[0015]确定所述存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值。
[0016]结合第一方面的第一种实现方式,在第二种实现方式中,所述确定所述数据分层存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值,包括:
[0017]获取用于确定所述存储门限值的防抖区域范围值的防抖因子β ;
[0018]将[ΤΗ*(1-β),ΤΗ*(1+β)],作为存储介质的存储门限值的防抖区域范围值;
[0019]其中,TH为存储门限值,β为防抖因子,β e (0,1)。
[0020]结合第一方面的第二种实现方式,在第三种实现方式中,获取用于确定所述存储门限值的防抖区域范围值的防抖因子β,包括:
[0021]将预设的固定值,作为用于确定所述存储门限值的防抖区域范围值的防抖因子。
[0022]结合第一方面的第二种实现方式,在第四种实现方式中,获取用于确定所述存储门限值的防抖区域范围值的防抖因子β,包括:
[0023]根据数据分层存储系统的业务压力,获取用于确定所述存储门限值的防抖区域范围值的的防抖因子β ;
[0024]其中,业务压力大的业务对应的防抖因子的数值,小于业务压力小的业务对应的防抖因子的数值。
[0025]第二方面,提供一种数据块迁移装置,应用于存储系统,所述存储系统包括性能等级不同的至少两种存储介质,包括:统计单元、判断单元和迁移单元,其中:
[0026]所述统计单元,用于统计所述数据块的访问频率;
[0027]所述判断单元,用于判断所述统计单元统计的所述访问频率是否达到进行数据块迁移的存储门限值,若所述访问频率达到进行数据块迁移的存储门限值,则判断所述访问频率是否在所述存储门限值的防抖区域范围值内,所述防抖区域范围值为防止数据块在不同存储介质之间进行迁移的存储门限值的变化范围区间值;
[0028]所述迁移单元,用于若所述判断单元的判断结果为所述访问频率不在所述存储门限值的防抖区域范围值内,则将所述数据块迁移至符合数据块访问频率的存储介质中;若所述判断单元的判断结果为所述访问频率在所述存储门限值的防抖区域范围值内,则不迁移所述数据块。
[0029]结合第二方面,在第一种实现方式中,所述装置还包括确定单元,其中,
[0030]所述确定单元,用于确定所述存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值。
[0031]结合第二方面的第一种实现方式,在第二种实现方式中,所述装置还包括获取单元,其中,
[0032]所述获取单元,用于获取用于确定所述存储门限值的防抖区域范围值的防抖因子β ;
[0033]所述确定单元,具体用于按如下方式确定所述数据分层存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值:
[0034]将[ΤΗ*(1-β),ΤΗ*(1+β)],作为存储介质的存储门限值的防抖区域范围值;
[0035]其中,TH为存储门限值,β为防抖因子,β e (0,1)。
[0036]结合第二方面的第二种实现方式,在第三种实现方式中,所述获取单元,具体用于按如下方式获取用于确定所述存储门限值的防抖区域范围值的防抖因子β:
[0037]将预设的固定值,作为用于确定所述存储门限值的防抖区域范围值的防抖因子。
[0038]结合第二方面的第二种实现方式,在第四种实现方式中,所述获取单元,具体用于按如下方式获取用于确定所述存储门限值的防抖区域范围值的防抖因子β:
[0039]根据数据分层存储系统的业务压力,获取用于确定所述存储门限值的防抖区域范围值的的防抖因子β ;
[0040]其中,业务压力大的业务对应的防抖因子的数值,小于业务压力小的业务对应的防抖因子的数值。
[0041]本发明实施例提供的数据块迁移方法及装置,进行数据块迁移过程中,将访问频率与存储门限值比较后,还进一步判断所述访问频率是否在所述存储门限值的防抖区域范围值内,若数据块的访问频率在确定的存储门限值的防抖区域范围值内,则不迁移数据块,故能够避免访问频率发生微小变化的数据块在不同存储介质之间频繁迁移,进而提高存储系统的业务性能。

【专利附图】

【附图说明】
[0042]图1为本发明实施例提供的数据块迁移方法实现流程图;
[0043]图2为本发明实施例中在存储门限值防抖区域范围值内数据不迁移示意图;
[0044]图3为本发明实施例应用的集群架构示意图;
[0045]图4为本发明实施例提供的集群架构中数据块迁移控制过程实现流程图;
[0046]图5Α-图为本发明实施例提供的数据块迁移装置构成示意图;
[0047]图6为本发明实施例提供的又一数据块迁移装置构成示意图。

【具体实施方式】
[0048]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0049]本发明实施例提供的数据块迁移方法,应用于存储系统中,该存储系统中包括性能等级不同的存储介质,每一层存储介质中存储的数据块的访问频率不同。本发明实施例中为相邻层级的存储介质之间的存储门限值设定一变化范围,在该变化范围内的数据块不进行迁移,本发明实施例以下为描述方便,将防止数据块在不同存储介质之间进行迁移的存储门限值的变化范围区间值称为存储门限值的防抖区域范围值。本发明实施例中针对访问频率排名位于存储门限值附近的数据,若访问频率排名在存储门限值防抖区域范围值内,不进行数据块迁移,使访问频率排名在存储门限值防抖区域范围值内的数据块当前存储的存储介质不变,能够避免访问频率发生微小变化的数据块在不同存储介质之间频繁迁移,进而提闻存储系统的业务性能。
[0050]图1所示为本发明实施例提供的数据块迁移方法实现流程图,该方法的执行主体可以是存储系统中的数据块迁移装置,该数据块迁移装置可以是一个安装在物理主机上的具有管控功能的控制器。当然该数据块迁移装置也可以是集成在控制器中并安装有执行相应功能的软件程序的部件。本发明实施例并不引以为限,还可以是其它具有管控功能,并能够执行相应功能的控制器件。如图1所示,该方法包括:
[0051]SlOl:统计数据块的访问频率。
[0052]本发明实施例中,存储系统中的各存储介质中存储有访问频率不同的数据块,数据块的访问频率体现数据块的访问热度。数据块的访问热度可采用多种确定方式,例如可采用设定时间内的数据块访问频率作为度量标准,也有采用多种指标按不同权重得到加权值的方法,最终转化为计数值,将该转化后的计数值作为访问热度。
[0053]S102:判断数据块的访问频率是否达到进行数据迁移的存储门限值。
[0054]本发明实施例中对访问频率排名可以按照访问频率从高到低的顺序排列,也可按照访问频率从低到高的顺序排列,本发明实施例不做限定。
[0055]进行数据块迁移,首先需要确定进行数据块迁移的存储门限值。一般的,将排名位于性能等级相邻的存储介质之间、存储边界位置处的数据块的访问频率,确定为相邻存储介质之间的存储门限值。
[0056]不同性能的存储介质的容量是不同的,存储的数据块数量也不同,故通过各存储介质的容量以及排名后的访问频率,可确定存储门限值。本发明实施例中可将排名位于性能等级相邻的存储介质之间、存储边界位置处的数据块的访问频率,确定为相邻存储介质之间的存储门限值。例如数据分层存储系统中有三种存储介质,分别为低性能层、次高性能层和最高性能层,并且分别能够存储M、N和P个数据块,则排名在第M的数据块的热度为低性能层的存储门限值,排名在第M+1的数据块的访问频率以及排名在第M+N的数据块的访问频率为次高性能层的存储门限值,排名在第M+N+1的数据块的访问频率为最高性能层的存储门限值。
[0057]需要说明的是,本发明实施例中所用的存储门限值是指相邻存储介质之间的存储门限值,对于性能最低的存储介质的下门限值和性能最高的存储介质的上门限值,可无需考虑在内。
[0058]进行数据块迁移时,判断访问频率是否达到进行数据块迁移的存储门限值,若达至|J,则执行S103,若未达到,则按照原有存储方式进行迁移存储。
[0059]S103:判断访问频率是否在存储门限值的防抖区域范围值内。
[0060]本发明实施例中为避免访问频率发生微小变化,导致数据快频繁在两种存储介质之间移动的现象,为存储门限值确定一防抖区域范围值,防抖区域范围值为防止数据块在不同存储介质之间进行迁移的存储门限值的变化范围区间值。
[0061]本发明实施例中进行数据块过程中,若访问频率达到进行数据块迁移的存储门限值,则进一步判断访问频率是否在存储门限值的防抖区域范围值内。若访问频率在存储门限值防抖区域范围值内,则进行S104,不进行数据块迁移,以消除不必要的数据移动。若访问频率不在存储门限值的防抖区域范围值内,则进行S105,将数据块迁移至符合数据块访问频率的存储介质中。
[0062]S104:不迁移数据块。
[0063]本发明实施例中,若数据块的访问频率达到进行迁移的存储门限值,但在存储门限值的防抖区域范围值内,则不进行数据块迁移,以消除不必要的数据移动。例如访问频率在【1,M】范围内的数据块,存储在低性能层中,位于存储门限值M附近的数据块很容易因为访问频率发生微小变化,而达到进行数据块迁移的存储门限值M,若按照传统迁移方法,则会迁移到存储访问频率在【M+l,M+N】范围内的数据块的次高性能层中存储,本发明实施例中在数据块访问频率达到进行数据块迁移的存储门限值M后,进一步判断数据块的访问频率是否在存储门限值M的防抖区域范围值内,若在防抖区域范围值内,则不进行数据块迁移,仍将数据块存储在低性能存储介质中,而不迁移至次高性能层的存储介质中,防止数据块频繁移动。
[0064]S105:将数据块迁移至符合数据块的访问频率的存储介质中。
[0065]本发明实施例提供的数据块迁移方法,进行数据块迁移过程中,将访问频率与存储门限值比较后,还进一步判断所述访问频率是否在所述存储门限值的防抖区域范围值内,若数据块的访问频率在确定的存储门限值的防抖区域范围值内,则不迁移数据块,故能够避免访问频率发生微小变化的数据块在不同存储介质之间频繁迁移,进而提高存储系统的业务性能。
[0066]本发明实施例中进行数据块迁移过程中,将访问频率与存储门限值,或者将访问频率与存储门限值的防抖区域范围值进行比较,主要是针对性能等级相邻的存储介质之间的存储门限值,以及性能等级相邻的存储介质之间的存储门限值的防抖区域范围值,故本发明实施例中需要预先确定存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值。
[0067]本发明实施例以下将结合实际应用对上述进行数据块迁移的过程中,确定存储门限值的防抖区域范围值,以实现在存储门限值的防抖区域范围值内的数据不迁移的过程,进行详细说明。
[0068]本发明实施例中在确定存储门限值的防抖区域范围值时,可通过一防抖因子来确定。获取到用于确定存储门限值的防抖区域范围值的防抖因子β,以及确定的存储门限值TH,将[TH* (1- β ),TH* (1+ β )],作为存储介质的存储门限值的防抖区域范围值,其中TH为存储门限值,即排名在存储介质边界的数据块的访问频率,β为防抖因子,β e (0,1)。例如图2所示,数据分层存储系统中有存储介质I和存储介质2,存储介质I能够存储M个数据块,访问频率排名位于M处的数据块的访问频率为TH,则存储介质I的存储门限值为TH,若防抖因子为β,则当数据块的访问频率在[ΤΗ*(1-β),ΤΗ*(1+β)]范围内的数据(图2中的虚线之间的范围内),都会保持原存储的存储介质不变。
[0069]本发明实施例中上述数据的访问频率TH是由数据实际访问情况所决定的,本发明实施例中上述防抖因子β可优选如下方式:
[0070]Α:将预设的固定值,作为用于确定存储门限值的防抖区域范围值的防抖因子。
[0071]本发明实施例可根据实际情况,对分级存储系统中的各存储介质的存储门限值设定一固定值作为用于确定存储门限值的防抖区域范围值的防抖因子,该预设的固定值可以是经验值。
[0072]本发明实施例中采用上述预设固定值的方式确定防抖因子的实现方式,将防抖因子设定为固定值,则在确定存储门限值的防抖区域范围值时,可直接根据监测获取的存储门限值,进行存储门限值的防抖区域范围值的确定,实现方式简单。数据块的访问频率若在该防抖区域范围值内,则保持数据当前存储的存储介质不变,不进行数据块迁移,防止数据分层存储系统中的数据块的频繁迁移,减少数据块频繁迁移对主机业务的影响。
[0073]B:根据不同的业务压力,确定用于确定存储介质的存储门限值的防抖区域范围值的防抖因子。
[0074]本发明实施例中可获取分层存储系统的当前业务压力,根据当前业务压力确定用于确定存储门限值的防抖区域范围值的的防抖因子。通过不同的业务压力,确定防抖因子的过程,可动态识别不同业务压力对应的防抖因子,实时根据业务压力调整存储门限值的防抖区域范围值,提供系统的业务性能。
[0075]本发明实施例中优选设置业务压力大的业务对应的防抖因子的数值,小于业务压力小的业务对应的防抖因子的数值,以便使业务压力大的热点数据尽量迁移到高性能的存储介质中,业务压力小的数据,尽量保持在原低性能的存储介质中,进一步提高数据分层存储系统业务性能。
[0076]需要说明的是,本发明实施例中确定防抖因子的实现方式可不局限于上述两种方式,还可以是其它的实现方式,本发明实施例不做限定。
[0077]本发明实施例提供的数据块迁移方法,根据存储门限值以及预设的防抖因子,确定存储门限值的防抖区域范围值,若数据块的访问频率发位于存储门限值的防抖区域范围值内,保持数据块当前存储的存储介质不变,能够避免访问频率发生微小变化的数据块在不同存储介质之间频繁迁移,进而提高数据分层存储系统业务性能。
[0078]本发明实施例中提供的数据块迁移方法可应用于单个存储节点,也可应用于具有多个存储节点的集群架构中。应用于单个存储节点的应用场景,则可直接获取单个存储节点中的各存储介质中的数据的访问频率,并进行存储节点上各存储介质的存储门限值防抖区域范围值的确定即可。应用于集群架构中时,各存储节点上的确定数据块的冷热标准不一样,即在存储节点A上存储的认为热度较高的数据块,不一定会高于在存储节点B上存储的认为为热度较低的数据块。故本发明实施例中为防止集群架构中的数据块的频繁迁移,可获取集群架构中各个存储节点上各存储介质中存储的数据的访问频率;对获取的存储在各个存储节点上各存储介质中的数据的访问频率,重新排名,得到集群架构中全部数据的访问频率排名。然后再根据集群架构中的各存储介质的容量进行存储门限值的防抖区域范围值的确定。
[0079]图3所示为包括有多个存储节点的集群架构示意图,集群架构中的控制中心,可对各个存储节点进行监控管理,例如可以获取各存储节点上存储的数据块的访问频率,并控制各存储节点进行数据的迁移存储等。
[0080]图4为应用本发明实施例提供的数据块迁移方法,在集群架构中进行数据块迁移的控制过程方法实现流程图,该方法的执行主体可以是集群架构中的控制中心,当然也可以是独立于控制中心的具有相应功能的控制部件,本发明实施例不做限定。如图3所示,该方法包括:
[0081]S201:获取集群架构中各个存储节点上各存储介质中存储的数据块的访问频率。
[0082]S202:对获取的存储在各个存储节点上各存储介质中的数据块的访问频率,重新排名,得到集群架构中全部数据块的访问频率排名。
[0083]S203:根据集群架构中各存储节点上的各存储介质的容量以及集群架构中全部数据块的访问频率排名,确定存储门限值。
[0084]本发明实施例中各存储节点上的存储介质可能相同,也可能不同,故本发明实施例中对于存储介质类型相同的存储介质,确定存储介质的容量时,可将类型相同的存储介质的容量和作为该类存储介质的容量。对于存储介质类型不同的存储介质,则可直接将每一类型的存储介质的自身容量作为对应存储介质类型的存储容量。
[0085]确定了集群架构中的全部存储介质的容量后,则可将集群架构中全部数据块的访问频率排名,确定排名在相邻存储介质之间的存储介质边界位置处的数据块访问频率,作为存储门限值。
[0086]S204:确定存储门限值的防抖区域范围值。
[0087]确定存储门限值的防抖区域范围值可参阅上述实施例中的相关描述,在此不再赘述。
[0088]S205:将确定的存储门限值的防抖区域范围值,分发到各存储节点。
[0089]本发明实施例中,为减少控制中心的负载,可将确定的存储门限值的防抖区域范围值分发到各存储节点,由各存储节点进行数据块迁移存储的控制。
[0090]S206:控制各存储节点根据确定的存储门限值的防抖区域范围值,进行数据块迁移过程控制。
[0091]本发明实施例中各存储节点可不考虑本身存储的数据的是冷点数据还是热点数据,可判断数据块的访问频率排名是否在存储门限值防抖区域范围值内;若是,则不进行数据块迁移,保持数据块当前存储的存储介质不变;若否,则将数据块,迁移到符合数据块的访问频率排名的存储介质中进行存储。
[0092]本发明实施例中,在集群架构中,各存储节点采用控制中心下发的存储介质的存储门限值防抖区域范围值进行数据的迁移控制,并不考虑数据的在本节点是热点数据还是冷点数据,能够在集群架构中进行防止访问频率发生微小变化的数据在不同存储介质之间频繁迁移,进而提高数据分层存储系统业务性能。
[0093]需要说明的是,本发明实施例中图4所示的实施过程仅是作为较佳的实施例进行举例说明,具体的实现方式并不局限于此,例如还可采用控制中心不将确定的存储门限值的防抖区域范围值下发到各存储节点,而是在确定了存储门限值的防抖区域范围值后,直接进行访问频率是否在存储门限值的防抖区域范围值内判断的步骤,并根据判断结果控制各个存储节点中存储的数据块的迁移存储过程。
[0094]基于上述实施例提供的数据块迁移方法,本发明实施例还提供一种数据迁移装置500,如图5A所示,该装置500包括统计单元501、判断单元502和迁移单元503,其中:
[0095]统计单元501,用于统计数据块的访问频率。
[0096]判断单元502,用于判断统计单元501统计的访问频率是否达到进行数据块迁移的存储门限值,若访问频率达到进行数据块迁移的存储门限值,则判断访问频率是否在存储门限值的防抖区域范围值内,防抖区域范围值为防止数据块在不同存储介质之间进行迁移的存储门限值的变化范围区间值。
[0097]迁移单元503,用于若判断单元502的判断结果为访问频率不在存储门限值的防抖区域范围值内,则将数据块迁移至符合数据块访问频率的存储介质中;若判断单元502的判断结果为所述访问频率在所述存储门限值的防抖区域范围值内,则不迁移数据块。
[0098]在第一种实现方式中,装置500还包括确定单元504,如图5B所示,其中,
[0099]确定单元504,用于确定存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值。
[0100]结合第一种实现方式,在第二种实现方式中,装置500还包括获取单元505,如图5C所示,其中,
[0101]获取单元505,用于获取用于确定存储门限值的防抖区域范围值的防抖因子β。
[0102]确定单元504,具体用于按如下方式确定数据分层存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值:
[0103]将[ΤΗ*(1-β),ΤΗ*(1+β)],作为存储介质的存储门限值的防抖区域范围值。
[0104]其中,TH为存储门限值,β为防抖因子,β e (0,1)。
[0105]在第三种实现方式中,获取单元505,具体用于按如下方式获取用于确定存储门限值的防抖区域范围值的防抖因子β:
[0106]将预设的固定值,作为用于确定存储门限值的防抖区域范围值的防抖因子。
[0107]在第四种实现方式中,获取单元505,具体用于按如下方式获取用于确定存储门限值的防抖区域范围值的防抖因子β:
[0108]根据数据分层存储系统的业务压力,获取用于确定存储门限值的防抖区域范围值的的防抖因子β。
[0109]其中,业务压力大的业务对应的防抖因子的数值,小于业务压力小的业务对应的防抖因子的数值。
[0110]在第五种实现方式中,获取单元505,还用于:
[0111]获取集群架构中各个存储节点上各存储介质中存储的数据块的访问频率。
[0112]根据获取的存储在各个存储节点上各数据块的访问频率,对集群架构中全部的数据块进行排名。
[0113]在第六种实现方式中,装置500还包括下发单元506和控制单元507,如图所示,其中:
[0114]下发单元506,用于在确定单元504确定了存储门限值的防抖区域范围值之后,向集群架构中的各个存储节点,下发确定的存储门限值的防抖区域范围值。
[0115]控制单元507,用于控制集群架构中的各个存储节点的判断单元502分别判断各自的存储介质中性能等级相邻的存储介质中存储的数据块的访问频率,是否在对应的相邻存储介质之间的存储门限值的防抖区域范围值内。
[0116]本发明实施例提供的数据存储装置,进行数据存储过程中,确定存储门限值后,还确定了存储门限值的防抖区域范围值,通过分别判断各存储介质中性能等级相邻的存储介质中存储的数据块的访问频率,是否在对应的相邻存储介质之间的存储门限值的防抖区域范围值内,若数据块的访问频率在确定的存储门限值的防抖区域范围值内,则保持数据块当前存储的存储介质不变,故能够避免访问频率发生微小变化的数据块在不同存储介质之间频繁迁移,进而提高数据分层存储系统业务性能。
[0117]本发明实施例中上述数据存储装置,可以是独立的部件,也可以是集成于其他部件中,例如本发明实施例提供的上述装置可以是数据分寸存储系统中的控制器,也可以是集成于控制器内的新的部件。
[0118]需要说明的是,本发明实施例中数据存储装置中各个模块/单元的功能实现以及交互方式可以进一步参照相关方法实施例的描述。
[0119]基于上述实施例提供的数据块迁移方法和装置,本发明实施例还提供一种数据块迁移装置600,如图6所示,该数据块迁移装置600包括处理器601、存储器602和总线603,其中处理器601和存储器602均与总线603连接。
[0120]本发明实施例中处理器601可以是一个通用中央处理器(CPU),微处理器,特定应用集成电路(applicat1n-specific integrated circuit, ASIC),或一个或多个用于控制本发明方案程序执行的集成电路。
[0121]存储器602,可以是只读存储器(read-only memory, ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory, RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPR0M)、只读光盘(CompactDisc Read-Only Memory,⑶-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。这些存储器通过总线与处理器相连接。
[0122]总线603可包括一通路,用于处理器601和存储器602之间通信。
[0123]本发明实施例中存储器602,用于存储处理器601执行的程序代码。
[0124]处理器601,用于调用存储器602存储的程序代码,实现如下功能:
[0125]统计数据块的访问频率。
[0126]判断访问频率是否达到进行数据块迁移的存储门限值。
[0127]若访问频率达到进行数据块迁移的存储门限值,则判断访问频率是否在存储门限值的防抖区域范围值内,防抖区域范围值为防止数据块在不同存储介质之间进行迁移的存储门限值的变化范围区间值。
[0128]若访问频率不在存储门限值的防抖区域范围值内,则将数据块迁移至符合数据块访问频率的存储介质中。
[0129]若访问频率在存储门限值的防抖区域范围值内,则不迁移数据块。
[0130]在第一种实现方式中,处理器601还用于:
[0131]确定存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值。
[0132]在第二种实现方式中,处理器601具体用于按如下方式确定存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值:
[0133]获取用于确定所述存储门限值的防抖区域范围值的防抖因子β ;
[0134]将[ΤΗ*(1_β),ΤΗ*(1+β)],作为存储介质的存储门限值的防抖区域范围值;
[0135]其中,TH为存储门限值,β为防抖因子,β e (0,1)。
[0136]在第三种实现方式中,处理器601具体用于按如下方式获取用于确定所述存储门限值的防抖区域范围值的防抖因子β:
[0137]将预设的固定值,作为用于确定所述存储门限值的防抖区域范围值的防抖因子。
[0138]在第四种实现方式中,处理器601具体用于按如下方式获取用于确定所述存储门限值的防抖区域范围值的防抖因子β:
[0139]根据数据分层存储系统的业务压力,获取用于确定所述存储门限值的防抖区域范围值的的防抖因子β ;
[0140]其中,业务压力大的业务对应的防抖因子的数值,小于业务压力小的业务对应的防抖因子的数值。
[0141]在第五种实现方式中,处理器601用于获取集群架构中各个存储节点上各存储介质中存储的数据块的访问频率;
[0142]处理器601具体用于按如下方式根据得到的各数据块的访问频率,对数据块进行排名:
[0143]根据获取的存储在各个存储节点上各数据块的访问频率,对集群架构中全部的数据块进行排名。
[0144]在第六种实现方式中,处理器601还用于:
[0145]确定存储门限值的防抖区域范围值之后,向集群架构中的各个存储节点,下发确定的所述存储门限值的防抖区域范围值;
[0146]控制集群架构中的各个存储节点分别判断各自的存储介质中存储的数据库的访问频率,是否在所述存储门限值的防抖区域范围值内。
[0147]需要说明的是,本发明实施例中数据存储装置中各个模块/单元的功能实现以及交互方式可以进一步参照相关方法实施例的描述。
[0148]本发明实施例提供的数据块迁移装置,进行数据块迁移过程中,确定存储门限值后,还确定了存储门限值的防抖区域范围值,通过分别判断各存储介质中性能等级相邻的存储介质中存储的数据块的访问频率,是否在对应的相邻存储介质之间的存储门限值的防抖区域范围值内,若数据块的访问频率在确定的存储门限值的防抖区域范围值内,则保持数据块当前存储的存储介质不变,故能够避免访问频率发生微小变化的数据块在不同存储介质之间频繁迁移,进而提高数据分层存储系统业务性能。
[0149]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1.一种数据块迁移方法,应用于存储系统,所述存储系统包括性能等级不同的至少两种存储介质,其特征在于,所述方法包括: 统计所述数据块的访问频率; 判断所述访问频率是否达到进行数据块迁移的存储门限值; 若所述访问频率达到进行数据块迁移的存储门限值,则判断所述访问频率是否在所述存储门限值的防抖区域范围值内,所述防抖区域范围值为防止数据块在不同存储介质之间进行迁移的存储门限值的变化范围区间值; 若所述访问频率不在所述存储门限值的防抖区域范围值内,则将所述数据块迁移至符合数据块访问频率的存储介质中; 若所述访问频率在所述存储门限值的防抖区域范围值内,则不迁移所述数据块。
2.如权利要求1所述的方法,其特征在于,所述方法还包括: 确定所述存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值。
3.如权利要求2所述的方法,其特征在于,所述确定所述数据分层存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值,包括: 获取用于确定所述存储门限值的防抖区域范围值的防抖因子β ; 将[ΤΗ*(1-β ),ΤΗ*(1+β )],作为存储介质的存储门限值的防抖区域范围值; 其中,TH为存储门限值,β为防抖因子,β e (O,I)。
4.如权利要求3所述的方法,其特征在于,获取用于确定所述存储门限值的防抖区域范围值的防抖因子β,包括: 将预设的固定值,作为用于确定所述存储门限值的防抖区域范围值的防抖因子。
5.如权利要求3所述的方法,其特征在于,获取用于确定所述存储门限值的防抖区域范围值的防抖因子β,包括: 根据数据分层存储系统的业务压力,获取用于确定所述存储门限值的防抖区域范围值的的防抖因子β ; 其中,业务压力大的业务对应的防抖因子的数值,小于业务压力小的业务对应的防抖因子的数值。
6.一种数据块迁移装置,应用于存储系统,所述存储系统包括性能等级不同的至少两种存储介质,其特征在于,包括:统计单元、判断单元和迁移单元,其中: 所述统计单元,用于统计所述数据块的访问频率; 所述判断单元,用于判断所述统计单元统计的所述访问频率是否达到进行数据块迁移的存储门限值,若所述访问频率达到进行数据块迁移的存储门限值,则判断所述访问频率是否在所述存储门限值的防抖区域范围值内,所述防抖区域范围值为防止数据块在不同存储介质之间进行迁移的存储门限值的变化范围区间值; 所述迁移单元,用于若所述判断单元的判断结果为所述访问频率不在所述存储门限值的防抖区域范围值内,则将所述数据块迁移至符合数据块访问频率的存储介质中;若所述判断单元的判断结果为所述访问频率在所述存储门限值的防抖区域范围值内,则不迁移所述数据块。
7.如权利要求6所述的装置,其特征在于,所述装置还包括确定单元,其中, 所述确定单元,用于确定所述存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值。
8.如权利要求7所述的装置,其特征在于,所述装置还包括获取单元,其中, 所述获取单元,用于获取用于确定所述存储门限值的防抖区域范围值的防抖因子β ; 所述确定单元,具体用于按如下方式确定所述数据分层存储系统中性能等级相邻的存储介质之间的存储门限值的防抖区域范围值: 将[ΤΗ*(1-β),ΤΗ*(1+β)],作为存储介质的存储门限值的防抖区域范围值; 其中,TH为存储门限值,β为防抖因子,β e (O,I)。
9.如权利要求8所述的装置,其特征在于,所述获取单元,具体用于按如下方式获取用于确定所述存储门限值的防抖区域范围值的防抖因子β: 将预设的固定值,作为用于确定所述存储门限值的防抖区域范围值的防抖因子。
10.如权利要求8所述的装置,其特征在于,所述获取单元,具体用于按如下方式获取用于确定所述存储门限值的防抖区域范围值的防抖因子β: 根据数据分层存储系统的业务压力,获取用于确定所述存储门限值的防抖区域范围值的的防抖因子β ; 其中,业务压力大的业务对应的防抖因子的数值,小于业务压力小的业务对应的防抖因子的数值。
【文档编号】G06F12/08GK104239230SQ201410431442
【公开日】2014年12月24日 申请日期:2014年8月28日 优先权日:2014年8月28日
【发明者】林宇, 王宇, 王辰 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1