CN103530240B - 数据块缓存方法和装置 - Google Patents
数据块缓存方法和装置 Download PDFInfo
- Publication number
- CN103530240B CN103530240B CN201310512498.5A CN201310512498A CN103530240B CN 103530240 B CN103530240 B CN 103530240B CN 201310512498 A CN201310512498 A CN 201310512498A CN 103530240 B CN103530240 B CN 103530240B
- Authority
- CN
- China
- Prior art keywords
- data block
- size
- current hotspot
- hot spot
- block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明实施例提供一种数据块缓存方法和装置。本发明数据块缓存方法,包括:确定是否调整当前热点数据块的大小,若确定调整当前热点数据块的大小,则调整当前热点数据块的大小,将调整后的当前热点数据块缓存到固态硬盘中。本发明实施例从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
Description
技术领域
本发明实施例涉及信息通信技术,尤其涉及一种数据块缓存方法和装置。
背景技术
在多级缓存架构中,物理内存作为一级缓存,通常将固态硬盘(Solid StateDevice,简称SSD)作为二级缓存,以利用SSD盘的快速读写能力,满足客户机的快速读写需求,同时还可以弥补物理内存容量的不足。
SSD作为二级缓存的实施方案,现有技术中通常是通过监控输入输出(Input/Output,简称IO)设备以数据块为单位识别出热点数据块,热点数据块是IO设备最近频繁访问的数据块,并将热点数据块复制到SSD上缓存,并且数据块的大小是固定的,其中,监控设备需要记录数据块的访问频率,缓存数据需要记录缓存数据块与SSD的存储单元的映射信息,都需要一定的内存开销。
然而,该方案仅在IO设备访问的数据的大小与设定的数据块的大小匹配度较高时,才能使数据块的大小、内存开销和SSD利用率三因素之间达到均衡。当IO设备访问的数据的大小偏离预先设定的数据块的大小较大时,会导致上述三因素之间无法均衡,从而无法自适应多种IO业务场景混合的情况。
发明内容
本发明实施例提供一种数据块缓存方法和装置,以解决现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题。
第一方面,本发明实施例提供一种数据块缓存方法,包括:
确定是否调整当前热点数据块的大小;
若确定调整所述当前热点数据块的大小,则调整所述当前热点数据块的大小;
将调整后的当前热点数据块缓存到固态硬盘中。
在第一方面的第一种可能的实现方式中,所述确定是否调整当前热点数据块的大小,包括:
根据所述当前热点数据块的大小、所述当前热点数据块的下一个热点数据块的大小和所述当前热点数据块与所述下一个热点数据块之间的一个冷数据块的大小,确定是否调整所述当前热点数据块的大小。
根据第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述根据所述当前热点数据块的大小、所述当前热点数据块的下一个热点数据块的大小和所述当前热点数据块与所述下一个热点数据块之间的一个冷数据块的大小,确定是否调整所述当前热点数据块的大小,包括:
根据所述当前热点数据块的大小a和所述一个冷数据块的大小c计算第一比值x,以及根据所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第二比值y,其中,
若第一比值x小于等于第一门限值或所述第二比值y小于等于第二门限值,则确定调整所述当前热点数据块的大小。
根据第一方面的第一种可能的实现方式,在第三种可能的实现方式中,所述根据所述当前热点数据块的大小、所述当前热点数据块的下一个热点数据块的大小和所述当前热点数据块与所述下一个热点数据块之间的一个冷数据块的大小,确定是否调整所述当前热点数据块的大小,包括:
根据所述当前热点数据块的大小a、所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第三比值z,其中,
若第三比值z小于等于第三门限值,则确定调整所述当前热点数据块的大小。
根据第一方面的第一种可能的实现方式,在第四种可能的实现方式中,所述根据所述当前热点数据块的大小、所述当前热点数据块的下一个热点数据块的大小和所述当前热点数据块与所述下一个热点数据块之间的一个冷数据块的大小,确定是否调整所述当前热点数据块的大小,包括:
根据所述当前热点数据块的大小a、所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第四比值q,其中,
若第四比值q小于等于第四门限值,则确定调整所述当前热点数据块的大小。
根据第一方面的第二种至第四种可能的实现方式的任意一种,在第五种可能的实现方式中,所述调整所述当前热点数据块的大小,包括:
合并所述当前热点数据块、所述下一个热点数据块和所述一个冷数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
根据第一方面,在第六种可能的实现方式中,所述确定是否调整当前热点数据块的大小,包括:
确定所述当前热点数据块的相邻的数据块是否为热点数据块;
若确定所述当前热点数据块的相邻的数据块为热点数据块,则确定调整当前热点数据块的大小;
所述调整所述当前热点数据块的大小,包括:
合并所述当前热点数据块和所述当前热点数据块的相邻的数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
根据第一方面,在第七种可能的实现方式中,所述确定是否调整当前热点数据块的大小,包括:
根据输入输出设备访问的数据的大小的平均值和所述当前热点数据块的大小,确定是否调整当前热点数据块的大小;
若所述当前热点数据块的大小小于所述平均值,则确定调整所述当前热点数据块的大小;
所述调整所述当前热点数据块的大小,包括:
向后补齐所述当前热点数据块为一个新的热点数据块,以使所述一个新的热点数据块的大小等于所述平均值,并将所述一个新的热点数据块作为调整后的当前热点数据块。
根据第一方面,在第八种可能的实现方式中,所述确定是否调整当前热点数据块的大小,包括:
统计与所述当前热点数据块相邻的两个数据块被输入输出设备访问的次数;
若与所述当前热点数据块相邻的数据块被输入输出设备访问的次数大于等于1,则确定调整当前热点数据块的大小;
所述调整所述当前热点数据块的大小,包括:
合并所述当前热点数据块和与所述当前热点数据块相邻的数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
根据第一方面、第一方面的第二种至第八种可能的实现方式的任意一种,在第九种可能的实现方式中,在所述将调整后的当前热点数据块缓存到固态硬盘中之后,还包括:
将所述调整后的当前热点数据块的下一个热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
根据第一方面、第一方面的第二种至第八种可能的实现方式的任意一种,在第十种可能的实现方式中,在所述调整所述当前热点数据块的大小之后,还包括:
将所述调整后的当前热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
根据第一方面、第一方面的第二种至第十种可能的实现方式的任意一种,在第十一种可能的实现方式中,还包括:
若确定不调整当前热点数据块的大小,则将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
第二方面,本发明实施例提供一种数据块缓存装置,包括:
调整确定模块,用于确定是否调整当前热点数据块的大小;
热点数据块调整模块,用于若确定调整所述当前热点数据块的大小,则调整所述当前热点数据块的大小;
数据块缓存模块,用于将调整后的当前热点数据块缓存到固态硬盘中。
在第二方面的第一种可能的实现方式中,所述调整确定模块,具体用于根据所述当前热点数据块的大小、所述当前热点数据块的下一个热点数据块的大小和所述当前热点数据块与所述下一个热点数据块之间的一个冷数据块的大小,确定是否调整所述当前热点数据块的大小。
根据第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述调整确定模块,具体用于根据所述当前热点数据块的大小a和所述一个冷数据块的大小c计算第一比值x,以及根据所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第二比值y,其中,若第一比值x小于等于第一门限值或所述第二比值y小于等于第二门限值,则确定调整所述当前热点数据块的大小。
根据第二方面的第一种可能的实现方式,在第三种可能的实现方式中,所述调整确定模块,具体用于根据所述当前热点数据块的大小a、所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第三比值z,其中,若第三比值z小于等于第三门限值,则确定调整所述当前热点数据块的大小。
根据第二方面的第一种可能的实现方式,在第四种可能的实现方式中,所述调整确定模块,具体用于根据所述当前热点数据块的大小a、所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第四比值q,其中,若第四比值q小于等于第四门限值,则确定调整所述当前热点数据块的大小。
根据第二方面的第二种至第四种可能的实现方式的任意一种,在第五种可能的实现方式中,所述热点数据块调整模块,具体用于合并所述当前热点数据块、所述下一个热点数据块和所述一个冷数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
根据第二方面,在第六种可能的实现方式中,所述调整确定模块,具体用于确定所述当前热点数据块的相邻的数据块是否为热点数据块;若确定所述当前热点数据块的相邻的数据块为热点数据块,则确定调整当前热点数据块的大小;
所述热点数据块调整模块,具体用于合并所述当前热点数据块和所述当前热点数据块的相邻的数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
根据第二方面,在第七种可能的实现方式中,所述调整确定模块,具体用于根据输入输出设备访问的数据的大小的平均值和所述当前热点数据块的大小,确定是否调整当前热点数据块的大小;若所述当前热点数据块的大小小于所述平均值,则确定调整所述当前热点数据块的大小;
所述热点数据块调整模块,具体用于向后补齐所述当前热点数据块为一个新的热点数据块,以使所述一个新的热点数据块的大小等于所述平均值,并将所述一个新的热点数据块作为调整后的当前热点数据块。
根据第二方面,在第八种可能的实现方式中,所述调整确定模块,具体用于统计与所述当前热点数据块相邻的两个数据块被输入输出设备访问的次数;若与所述当前热点数据块相邻的数据块被输入输出设备访问的次数大于等于1,则确定调整当前热点数据块的大小;
所述热点数据块调整模块,具体用于合并所述当前热点数据块和与所述当前热点数据块相邻的数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
根据第二方面、第二方面的第二种至第八种可能的实现方式的任意一种,在第九种可能的实现方式中,所述调整确定模块,还用于在所述将调整后的当前热点数据块缓存到固态硬盘中之后,将所述调整后的当前热点数据块的下一个热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
根据第二方面、第二方面的第二种至第八种可能的实现方式的任意一种,在第十种可能的实现方式中,所述调整确定模块,还用于在所述调整所述当前热点数据块的大小之后,将所述调整后的当前热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
根据第二方面、第二方面的第二种至第十种可能的实现方式的任意一种,在第十一种可能的实现方式中,所述调整确定模块,还用于若确定不调整当前热点数据块的大小,则将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
本发明实施例数据块缓存方法和装置,通过确定是否调整当前热点数据块的大小,若确定调整当前热点数据块的大小,则调整当前热点数据块的大小并将调整后的当前热点数据块缓存到固态硬盘中。从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一所提供的数据块缓存方法的流程图;
图2A为本发明实施例二所提供的数据块缓存方法的流程图;
图2B为本发明实施例二所提供的数据块缓存方法的示意图;
图3A为本发明实施例三所提供的数据块缓存方法的流程图;
图3B为本发明实施例三所提供的数据块缓存方法的示意图;
图4为本发明实施例四所提供的数据块缓存方法的流程图;
图5为本发明实施例五所提供的数据块缓存方法的流程图;
图6为本发明实施例六所提供的数据块缓存方法的流程图;
图7为本发明实施例七所提供的数据块缓存方法的流程图;
图8为本发明实施例八所提供的数据块缓存方法的流程图;
图9为本发明实施例九所提供的数据块缓存方法的流程图;
图10为本发明实施例十所提供的数据块缓存装置1000的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例一所提供的数据块缓存方法的流程图。本实施例的方法适用于将热点数据块缓存到SSD上的情况。该方法由数据块缓存装置执行,该装置通常以硬件和/或软件的方式来实现。本实施例的方法包括如下步骤:
110、确定是否调整当前热点数据块的大小。
由于IO设备访问的数据的大小因业务场景不同存在较大差异,因此会出现IO设备访问的数据的大小偏离预先设定的数据块的大小较大的情况,从而使采用现有技术的方案向SSD缓存数据块会出现数据块的大小、内存开销和SSD利用率三因素之间无法均衡,从而无法自适应多种IO业务场景混合的问题。例如,数据块的大小设定越大,需要记录的映射信息越少,内存开销也就越少,而一个数据块内真正的热点数据所占比例可能会越小,一块SSD缓存的热点数据所占比例就越小,SSD利用率就越低。数据块的大小设定越小,虽然可以提升SSD利用率,但是由于需要记录的映射信息越多,使得相应的内存开销也会越大。因此如何使数据块大小适应IO设备访问的数据的大小,实现上述三因素之间达到均衡,也即无论在哪种业务场景下,都可以使上述三因素之间达到平衡至关重要。本实施例中正是通过110确定是否调整当前热点数据块的大小,从而判断是否进入120。从而可以实现对当前热点数据块的大小进行调整,以适应IO设备访问的数据的大小,实现上述三因素之间达到平衡。
120、若确定调整当前热点数据块的大小,则调整当前热点数据块的大小。
130、将调整后的当前热点数据块缓存到固态硬盘中。
具体的,确定是否调整当前热点数据块的大小,若确定调整当前热点数据块的大小,则调整当前热点数据块的大小并将调整后的当前热点数据块缓存到固态硬盘中。
本实施例提供的数据块缓存方法,通过确定是否调整当前热点数据块的大小,若确定调整当前热点数据块的大小,则调整当前热点数据块的大小并将调整后的当前热点数据块缓存到固态硬盘中。从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
本实施例以上述实施例一为基础,进一步进行了优化,图2A为本发明实施例二所提供的数据块缓存方法的流程图。参照图2A,本实施例的方法可以包括:
210、根据当前热点数据块的大小、当前热点数据块的下一个热点数据块的大小和当前热点数据块与下一个热点数据块之间的一个冷数据块的大小,确定是否调整当前热点数据块的大小,若是则执行220,否则执行230。
举例来说,根据当前热点数据块的大小、当前热点数据块的下一个热点数据块的大小和当前热点数据块与下一个热点数据块之间的一个冷数据块的大小,可以通过如下三种方式实现;
一种可行的实现方式为:根据当前热点数据块的大小a和一个冷数据块的大小c计算第一比值x,以及根据下一个热点数据块的大小b和一个冷数据块的大小c计算第二比值y,其中,若第一比值x小于等于第一门限值或第二比值y小于等于第二门限值,则确定调整当前热点数据块的大小。
另一种可行的实现方式为:根据当前热点数据块的大小a、下一个热点数据块的大小b和一个冷数据块的大小c计算第三比值z,其中,若第三比值z小于等于第三门限值,则确定调整当前热点数据块的大小。
又一种可行的实现方式为:根据当前热点数据块的大小a、下一个热点数据块的大小b和一个冷数据块的大小c计算第四比值q,其中,若第四比值q小于等于第四门限值,则确定调整当前热点数据块的大小。
在此需要说明的是,上述三种实现方式仅是一部分实现方式,并不代表所有可能的实现方式,基于本发明获取的所有其他可能的实现方式,都应在本发明保护范围之内。
220、合并当前热点数据块、下一个热点数据块和一个冷数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块,并执行240。
230、将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行210。
240、将调整后的当前热点数据块缓存到固态硬盘中。
250、将调整后的当前热点数据块的下一个热点数据块作为当前热点数据块,并执行210。
本实施例提供的数据块缓存方法,通过根据当前热点数据块的大小、当前热点数据块的下一个热点数据块的大小和当前热点数据块与下一个热点数据块之间的一个冷数据块的大小,确定是否调整当前热点数据块的大小,若确定调整当前热点数据块的大小,则调整当前热点数据块的大小并将调整后的当前热点数据块缓存到固态硬盘中。从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
为对上述实施例二提供的数据块缓存方法进行详细介绍,在此配合图2B进行说明,图2B为本发明实施例二所提供的数据块缓存方法的示意图,参照图2B,以当前共有5个热点数据块和5个冷数据块为例进行介绍,5个热点数据块分别为热点数据块1、热点数据块2、热点数据块3、热点数据块4和热点数据块5,5个冷数据块分别为冷数据块1、冷数据块2、冷数据块3、冷数据块4和冷数据块5。以热点数据块1为当前热点数据块,由图2B示出的,热点数据块2为热点数据块1的下一个热点数据块,冷数据块1为热点数据块1和热点数据块2之间一个冷数据块,若确定可以合并热点数据块1、热点数据块2和冷数据块1,则将其合并为一个新的热点数据块,也即合并后的数据块为调整后的热点数据块1。接着以调整后的热点数据块1的下一个热点数据块3为当前热点数据块,确定是否调整热点数据块3的大小,正如图2B示出的,热点数据块3不满足调整条件,因此为对热点数据块3进行调整,继续以热点数据块4为当前热点数据块确定是否对热点数据块4进行调整,由于热点数据块4满足调整条件,因此将热点数据块4冷数据块5和热点数据块5合并为调整后的热点数据块2,最终缓存到固态硬盘的热点数据块为调整后的热点数据块1、热点数据块3和调整后的热点数据块2。
本实施例以上述实施例一为基础,进一步进行了优化,图3A为本发明实施例三所提供的数据块缓存方法的流程图。本实施例与上述实施例二的区别在于调整当前热点数据块后,将调整后的当前热点数据块作为当前热点数据块,并继续执行是否调整当前热点数据块的步骤。参照图3A,本实施例的方法可以包括:
310、根据当前热点数据块的大小、当前热点数据块的下一个热点数据块的大小和当前热点数据块与下一个热点数据块之间的一个冷数据块的大小,确定是否调整当前热点数据块的大小,若是则执行320,否则执行330。
320、合并当前热点数据块、下一个热点数据块和一个冷数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块,并执行340。
330、将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行310。
340、将调整后的当前热点数据块作为当前热点数据块,并执行310。
本实施例提供的数据块缓存方法,通过根据当前热点数据块的大小、当前热点数据块的下一个热点数据块的大小和当前热点数据块与下一个热点数据块之间的一个冷数据块的大小,确定是否调整当前热点数据块的大小,若确定调整当前热点数据块的大小,则将调整后的当前热点数据块作为当前热点数据块并继续执行判断是否调整当前热点数据块的步骤。从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
为对上述实施例三提供的数据块缓存方法进行详细介绍,在此配合图3B进行说明,图3B为本发明实施例三所提供的数据块缓存方法的示意图,参照图3B,以当前共有5个热点数据块和5个冷数据块为例进行介绍,5个热点数据块分别为热点数据块1、热点数据块2、热点数据块3、热点数据块4和热点数据块5,5个冷数据块分别为冷数据块1、冷数据块2、冷数据块3、冷数据块4和冷数据块5。以热点数据块1为当前热点数据块,由图3B示出的,热点数据块2为热点数据块1的下一个热点数据块,冷数据块1为热点数据块1和热点数据块2之间一个冷数据块,若确定可以合并热点数据块1、热点数据块2和冷数据块1,则将其合并为一个新的热点数据块,也即合并后的数据块为调整后的热点数据块1。接着以调整后的热点数据块1当前热点数据块,确定是否调整调整后的热点数据块1的大小,正如图3B示出的,调整后的热点数据块1满足调整条件,因此为对调整后的热点数据块1进行调整,将调整后的热点数据块1、冷数据块2和热点数据块3合并为调整后的热点数据块2,继续以热点数据块4为当前热点数据块确定是否对热点数据块4进行调整,由于热点数据块4满足调整条件,因此将热点数据块4冷数据块5和热点数据块5合并为调整后的热点数据块2,再以调整后的热点数据块2为当前热点数据块确定是否对调整后的热点数据块2调整,由图3B示出的,未对调整后的热点数据块2进行调整后,以热点数据块4为当前热点数据块,确定是否对热点数据块4进行调整,通过合并热点数据块4、冷数据块5和热点数据块5对热点数据块4进行调整,调整后的热点数据块为调整后的热点数据块3。最终缓存到固态硬盘的热点数据块为调整后的热点数据块2和调整后的热点数据块3。
本实施例以上述实施例一为基础,进一步进行了优化,图4为本发明实施例四所提供的数据块缓存方法的流程图。参照图4,本实施例的方法可以包括:
410、确定当前热点数据块的相邻的数据块是否为热点数据块,若是则执行420,否则执行430。
420、合并当前热点数据块和当前热点数据块的相邻的数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块,并执行440。
430、将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行410。
440、将调整后的当前热点数据块缓存到固态硬盘中。
450、将调整后的当前热点数据块的下一个热点数据块作为当前热点数据块,并执行410。
本实施例提供的数据块缓存方法,通过确定当前热点数据块的相邻的数据块是否为热点数据块,若是则合并当前热点数据块和当前热点数据块的相邻的数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块,将调整后的当前热点数据块缓存到固态硬盘中,并以调整后的当前热点数据块的下一个热点数据块作为当前热点数据块继续执行判断是否调整当前热点数据块的步骤。从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
本实施例以上述实施例一为基础,进一步进行了优化,图5为本发明实施例五所提供的数据块缓存方法的流程图。本实施例与上述实施例四的区别在于调整当前热点数据块后,将调整后的当前热点数据块作为当前热点数据块,并继续执行是否调整当前热点数据块的步骤。参照图5,本实施例的方法可以包括:
510、确定当前热点数据块的相邻的数据块是否为热点数据块,若是则执行520,否则执行530。
520、合并当前热点数据块和当前热点数据块的相邻的数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块,并执行540。
530、将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行510。
540、将调整后的当前热点数据块作为当前热点数据块,并执行510。
本实施例提供的数据块缓存方法,通过确定当前热点数据块的相邻的数据块是否为热点数据块,若是则合并当前热点数据块和当前热点数据块的相邻的数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块,并将调整后的当前热点数据块作为当前热点数据块执行判断是否调整当前热点数据块的步骤。从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
本实施例以上述实施例一为基础,进一步进行了优化,图6为本发明实施例六所提供的数据块缓存方法的流程图。参照图6,本实施例的方法可以包括:
610、根据输入输出设备访问的数据的大小的平均值和当前热点数据块的大小,确定是否调整当前热点数据块的大小,若是则执行620,否则执行630。
620、向后补齐当前热点数据块为一个新的热点数据块,以使一个新的热点数据块的大小等于平均值,并将一个新的热点数据块作为调整后的当前热点数据块,并执行640。
630、将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行610。
640、将调整后的当前热点数据块缓存到固态硬盘中。
650、将调整后的当前热点数据块的下一个热点数据块作为当前热点数据块,并执行610。
本实施例提供的数据块缓存方法,通过根据输入输出设备访问的数据的大小的平均值和当前热点数据块的大小,确定是否调整当前热点数据块的大小,若调整则向后补齐当前热点数据块为一个新的热点数据块,以使一个新的热点数据块的大小等于平均值,并将一个新的热点数据块作为调整后的当前热点数据块,将调整后的当前热点数据块缓存到固态硬盘中,将调整后的当前热点数据块的下一个热点数据块作为当前热点数据块继续执行判断是否调整当前热点数据块的步骤。从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
本实施例以上述实施例一为基础,进一步进行了优化,图7为本发明实施例七所提供的数据块缓存方法的流程图。本实施例与上述实施例六的区别在于调整当前热点数据块后,将调整后的当前热点数据块作为当前热点数据块,并继续执行是否调整当前热点数据块的步骤。参照图7,本实施例的方法可以包括:
710、根据输入输出设备访问的数据的大小的平均值和当前热点数据块的大小,确定是否调整当前热点数据块的大小,若是则执行720,否则执行730。
720、向后补齐当前热点数据块为一个新的热点数据块,以使一个新的热点数据块的大小等于平均值,并将一个新的热点数据块作为调整后的当前热点数据块,并执行740。
730、将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行710。
740、将调整后的当前热点数据块作为当前热点数据块,并执行710。
本实施例提供的数据块缓存方法,通过根据输入输出设备访问的数据的大小的平均值和当前热点数据块的大小,确定是否调整当前热点数据块的大小,若调整则向后补齐当前热点数据块为一个新的热点数据块,以使一个新的热点数据块的大小等于平均值,并将一个新的热点数据块作为调整后的当前热点数据块,并以该调整后的当前热点数据块作为当前热点数据块继续执行判断是否调整当前热点数据块的步骤。从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
本实施例以上述实施例一为基础,进一步进行了优化,图8为本发明实施例八所提供的数据块缓存方法的流程图。参照图8,本实施例的方法可以包括:
810、确定是否调整当前热点数据块的大小,若是则执行820,否则执行830。
举例来说,确定是否调整当前热点数据块的大小可以通过如下方式实现:
统计与当前热点数据块相邻的两个数据块被输入输出设备访问的次数;若与当前热点数据块相邻的数据块被输入输出设备访问的次数大于等于1,则确定调整当前热点数据块的大小。
820、合并当前热点数据块和与当前热点数据块相邻的数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块,并执行840。
830、将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行810。
840、将调整后的当前热点数据块缓存到固态硬盘中。
850、将调整后的当前热点数据块的下一个热点数据块作为当前热点数据块,并执行810。
本实施例提供的数据块缓存方法,通过统计与当前热点数据块相邻的两个数据块被输入输出设备访问的次数来确定是否调整当前热点数据块的大小,若是则合并当前热点数据块和与当前热点数据块相邻的数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块,将调整后的当前热点数据块缓存到固态硬盘中,并将调整后的当前热点数据块的下一个热点数据块作为当前热点数据块继续执行判断是否调整当前热点数据块的步骤。从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
本实施例以上述实施例一为基础,进一步进行了优化,图9为本发明实施例九所提供的数据块缓存方法的流程图。本实施例与上述实施例八的区别在于调整当前热点数据块后,将调整后的当前热点数据块作为当前热点数据块,并继续执行是否调整当前热点数据块的步骤。参照图9,本实施例的方法可以包括:
910、确定是否调整当前热点数据块的大小,若是则执行920,否则执行930。
920、合并当前热点数据块和与当前热点数据块相邻的数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块,并执行940。
930、将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行910。
940、将调整后的当前热点数据块作为当前热点数据块,并执行910。
本实施例提供的数据块缓存方法,通过统计与当前热点数据块相邻的两个数据块被输入输出设备访问的次数来确定是否调整当前热点数据块的大小,若是则合并当前热点数据块和与当前热点数据块相邻的数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块,并将调整后的当前热点数据块作为当前热点数据块继续执行判断是否调整当前热点数据块的步骤。从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
需要说明的是,对于上述实施例二至实施例九中提供的调整当前热点数据块的大小的方法,可以通过采用任意至少两种方法调整当前热点数据块的大小,例如采用实施例二中提供的合并当前热点数据块、下一个热点数据块和一个冷数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块的方法调整当前热点数据块后,也可以采用实施例四中提供的调整当前热点数据块的方法来对当前热点数据块进行调整,即通过合并当前热点数据块和当前热点数据块的相邻的数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块。
图10为本发明实施例十所提供的数据块缓存装置1000的结构示意图。本实施例的装置适用于将热点数据块缓存到SSD上的情况。该装置通常以硬件和/或软件的方式来实现。参照图10,该数据块缓存装置包括如下模块:调整确定模块1010、热点数据块调整模块1020和数据块缓存模块1030。
调整确定模块1010用于确定是否调整当前热点数据块的大小;热点数据块调整模块1020用于若确定调整当前热点数据块的大小,则调整当前热点数据块的大小;数据块缓存模块1030用于将调整后的当前热点数据块缓存到固态硬盘中。
进一步的,调整确定模块1010具体用于根据当前热点数据块的大小、当前热点数据块的下一个热点数据块的大小和当前热点数据块与下一个热点数据块之间的一个冷数据块的大小,确定是否调整当前热点数据块的大小。
可选的,调整确定模块1010具体用于根据当前热点数据块的大小a和一个冷数据块的大小c计算第一比值x,以及根据下一个热点数据块的大小b和一个冷数据块的大小c计算第二比值y,其中,若第一比值x小于等于第一门限值或第二比值y小于等于第二门限值,则确定调整当前热点数据块的大小。
可选的,调整确定模块1010具体用于根据当前热点数据块的大小a、下一个热点数据块的大小b和一个冷数据块的大小c计算第三比值z,其中,若第三比值z小于等于第三门限值,则确定调整当前热点数据块的大小。
可选的,调整确定模块1010具体用于根据当前热点数据块的大小a、下一个热点数据块的大小b和一个冷数据块的大小c计算第四比值q,其中,若第四比值q小于等于第四门限值,则确定调整当前热点数据块的大小。
进一步的,热点数据块调整模块1020具体用于合并当前热点数据块、下一个热点数据块和一个冷数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块。
可选的,调整确定模块1010具体用于确定当前热点数据块的相邻的数据块是否为热点数据块;若确定当前热点数据块的相邻的数据块为热点数据块,则确定调整当前热点数据块的大小;热点数据块调整模块1020具体用于合并当前热点数据块和当前热点数据块的相邻的数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块。
可选的,调整确定模块1010具体用于根据输入输出设备访问的数据的大小的平均值和当前热点数据块的大小,确定是否调整当前热点数据块的大小;若当前热点数据块的大小小于平均值,则确定调整当前热点数据块的大小;热点数据块调整模块1020具体用于向后补齐当前热点数据块为一个新的热点数据块,以使一个新的热点数据块的大小等于平均值,并将一个新的热点数据块作为调整后的当前热点数据块。
可选的,调整确定模块1010具体用于统计与当前热点数据块相邻的两个数据块被输入输出设备访问的次数;若与当前热点数据块相邻的数据块被输入输出设备访问的次数大于等于1,则确定调整当前热点数据块的大小;热点数据块调整模块1020具体用于合并当前热点数据块和与当前热点数据块相邻的数据块为一个新的热点数据块,并将一个新的热点数据块作为调整后的当前热点数据块。
进一步的,调整确定模块1010还用于在将调整后的当前热点数据块缓存到固态硬盘中之后,将调整后的当前热点数据块的下一个热点数据块作为当前热点数据块,并执行确定是否调整当前热点数据块的大小的步骤。
可选的,调整确定模块1010还用于在调整当前热点数据块的大小之后,将调整后的当前热点数据块作为当前热点数据块,并执行确定是否调整当前热点数据块的大小的步骤。
进一步的,调整确定模块1010还用于若确定不调整当前热点数据块的大小,则将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行确定是否调整当前热点数据块的大小的步骤。
本实施例提供的数据块缓存装置,通过确定是否调整当前热点数据块的大小,若确定调整当前热点数据块的大小,则调整当前热点数据块的大小并将调整后的当前热点数据块缓存到固态硬盘中。从而解决了现有技术中IO设备访问的数据的大小偏离预先设定的数据块的大小过多时,数据块的大小、内存开销和SSD利用率三因素会失衡,无法自适应多种IO业务场景混合的问题,实现了在多种IO业务场景下数据块的大小、内存开销和SSD利用率三因素之间的平衡。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (22)
1.一种数据块缓存方法,其特征在于,包括:
确定是否调整当前热点数据块的大小;
若确定调整所述当前热点数据块的大小,则调整所述当前热点数据块的大小;
将调整后的当前热点数据块缓存到固态硬盘中;
若确定不调整当前热点数据块的大小,则将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
2.根据权利要求1所述的方法,其特征在于,所述确定是否调整当前热点数据块的大小,包括:
根据所述当前热点数据块的大小、所述当前热点数据块的下一个热点数据块的大小和所述当前热点数据块与所述下一个热点数据块之间的一个冷数据块的大小,确定是否调整所述当前热点数据块的大小。
3.根据权利要求2所述的方法,其特征在于,所述根据所述当前热点数据块的大小、所述当前热点数据块的下一个热点数据块的大小和所述当前热点数据块与所述下一个热点数据块之间的一个冷数据块的大小,确定是否调整所述当前热点数据块的大小,包括:
根据所述当前热点数据块的大小a和所述一个冷数据块的大小c计算第一比值x,以及根据所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第二比值y,其中,
若第一比值x小于等于第一门限值或所述第二比值y小于等于第二门限值,则确定调整所述当前热点数据块的大小。
4.根据权利要求2所述的方法,其特征在于,所述根据所述当前热点数据块的大小、所述当前热点数据块的下一个热点数据块的大小和所述当前热点数据块与所述下一个热点数据块之间的一个冷数据块的大小,确定是否调整所述当前热点数据块的大小,包括:
根据所述当前热点数据块的大小a、所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第三比值z,其中,
若第三比值z小于等于第三门限值,则确定调整所述当前热点数据块的大小。
5.根据权利要求2所述的方法,其特征在于,所述根据所述当前热点数据块的大小、所述当前热点数据块的下一个热点数据块的大小和所述当前热点数据块与所述下一个热点数据块之间的一个冷数据块的大小,确定是否调整所述当前热点数据块的大小,包括:
根据所述当前热点数据块的大小a、所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第四比值q,其中,
若第四比值q小于等于第四门限值,则确定调整所述当前热点数据块的大小。
6.根据权利要求3~5中任一项所述的方法,其特征在于,所述调整所述当前热点数据块的大小,包括:
合并所述当前热点数据块、所述下一个热点数据块和所述一个冷数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
7.根据权利要求1所述的方法,其特征在于,所述确定是否调整当前热点数据块的大小,包括:
确定所述当前热点数据块的相邻的数据块是否为热点数据块;
若确定所述当前热点数据块的相邻的数据块为热点数据块,则确定调整当前热点数据块的大小;
所述调整所述当前热点数据块的大小,包括:
合并所述当前热点数据块和所述当前热点数据块的相邻的数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
8.根据权利要求1所述的方法,其特征在于,所述确定是否调整当前热点数据块的大小,包括:
根据输入输出设备访问的数据的大小的平均值和所述当前热点数据块的大小,确定是否调整当前热点数据块的大小;
若所述当前热点数据块的大小小于所述平均值,则确定调整所述当前热点数据块的大小;
所述调整所述当前热点数据块的大小,包括:
向后补齐所述当前热点数据块为一个新的热点数据块,以使所述一个新的热点数据块的大小等于所述平均值,并将所述一个新的热点数据块作为调整后的当前热点数据块。
9.根据权利要求1所述的方法,其特征在于,所述确定是否调整当前热点数据块的大小,包括:
统计与所述当前热点数据块相邻的两个数据块被输入输出设备访问的次数;
若与所述当前热点数据块相邻的数据块被输入输出设备访问的次数大于等于1,则确定调整当前热点数据块的大小;
所述调整所述当前热点数据块的大小,包括:
合并所述当前热点数据块和与所述当前热点数据块相邻的数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
10.根据权利要求1~5、7、8、9中任一项所述的方法,其特征在于,在所述将调整后的当前热点数据块缓存到固态硬盘中之后,还包括:
将所述调整后的当前热点数据块的下一个热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
11.根据权利要求1~5、7、8、9中任一项所述的方法,其特征在于,在所述调整所述当前热点数据块的大小之后,还包括:
将所述调整后的当前热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
12.一种数据块缓存装置,其特征在于,包括:
调整确定模块,用于确定是否调整当前热点数据块的大小;
热点数据块调整模块,用于若确定调整所述当前热点数据块的大小,则调整所述当前热点数据块的大小;
数据块缓存模块,用于将调整后的当前热点数据块缓存到固态硬盘中;
所述调整确定模块,还用于若确定不调整当前热点数据块的大小,则将当前热点数据块缓存到固态硬盘中,并将当前热点数据块的下一个热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
13.根据权利要求12所述的装置,其特征在于,所述调整确定模块,具体用于根据所述当前热点数据块的大小、所述当前热点数据块的下一个热点数据块的大小和所述当前热点数据块与所述下一个热点数据块之间的一个冷数据块的大小,确定是否调整所述当前热点数据块的大小。
14.根据权利要求13所述的装置,其特征在于,所述调整确定模块,具体用于根据所述当前热点数据块的大小a和所述一个冷数据块的大小c计算第一比值x,以及根据所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第二比值y,其中,若第一比值x小于等于第一门限值或所述第二比值y小于等于第二门限值,则确定调整所述当前热点数据块的大小。
15.根据权利要求13所述的装置,其特征在于,所述调整确定模块,具体用于根据所述当前热点数据块的大小a、所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第三比值z,其中,若第三比值z小于等于第三门限值,则确定调整所述当前热点数据块的大小。
16.根据权利要求13所述的装置,其特征在于,所述调整确定模块,具体用于根据所述当前热点数据块的大小a、所述下一个热点数据块的大小b和所述一个冷数据块的大小c计算第四比值q,其中,若第四比值q小于等于第四门限值,则确定调整所述当前热点数据块的大小。
17.根据权利要求14~16中任一项所述的装置,其特征在于,所述热点数据块调整模块,具体用于合并所述当前热点数据块、所述下一个热点数据块和所述一个冷数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
18.根据权利要求12所述的装置,其特征在于,所述调整确定模块,具体用于确定所述当前热点数据块的相邻的数据块是否为热点数据块;若确定所述当前热点数据块的相邻的数据块为热点数据块,则确定调整当前热点数据块的大小;
所述热点数据块调整模块,具体用于合并所述当前热点数据块和所述当前热点数据块的相邻的数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
19.根据权利要求12所述的装置,其特征在于,所述调整确定模块,具体用于根据输入输出设备访问的数据的大小的平均值和所述当前热点数据块的大小,确定是否调整当前热点数据块的大小;若所述当前热点数据块的大小小于所述平均值,则确定调整所述当前热点数据块的大小;
所述热点数据块调整模块,具体用于向后补齐所述当前热点数据块为一个新的热点数据块,以使所述一个新的热点数据块的大小等于所述平均值,并将所述一个新的热点数据块作为调整后的当前热点数据块。
20.根据权利要求12所述的装置,其特征在于,所述调整确定模块,具体用于统计与所述当前热点数据块相邻的两个数据块被输入输出设备访问的次数;若与所述当前热点数据块相邻的数据块被输入输出设备访问的次数大于等于1,则确定调整当前热点数据块的大小;
所述热点数据块调整模块,具体用于合并所述当前热点数据块和与所述当前热点数据块相邻的数据块为一个新的热点数据块,并将所述一个新的热点数据块作为调整后的当前热点数据块。
21.根据权利要求12~16、18、19、20中任一项所述的装置,其特征在于,所述调整确定模块,还用于在所述将调整后的当前热点数据块缓存到固态硬盘中之后,将所述调整后的当前热点数据块的下一个热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
22.根据权利要求12~16、18、19、20中任一项所述的装置,其特征在于,所述调整确定模块,还用于在所述调整所述当前热点数据块的大小之后,将所述调整后的当前热点数据块作为当前热点数据块,并执行所述确定是否调整当前热点数据块的大小的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310512498.5A CN103530240B (zh) | 2013-10-25 | 2013-10-25 | 数据块缓存方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310512498.5A CN103530240B (zh) | 2013-10-25 | 2013-10-25 | 数据块缓存方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103530240A CN103530240A (zh) | 2014-01-22 |
CN103530240B true CN103530240B (zh) | 2016-09-07 |
Family
ID=49932269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310512498.5A Active CN103530240B (zh) | 2013-10-25 | 2013-10-25 | 数据块缓存方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103530240B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105740293B (zh) * | 2014-12-12 | 2019-07-23 | 金蝶软件(中国)有限公司 | 数据导出方法和装置 |
CN107622020B (zh) * | 2017-09-06 | 2020-09-25 | 网宿科技股份有限公司 | 一种数据存储方法、访问方法及装置 |
CN110442575B (zh) * | 2019-07-01 | 2023-07-18 | 中山大学 | 一种面向科学大数据的索引生成方法和检索方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103336670A (zh) * | 2013-06-04 | 2013-10-02 | 华为技术有限公司 | 一种基于数据温度对数据块自动进行分布的方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8161241B2 (en) * | 2010-01-12 | 2012-04-17 | International Business Machines Corporation | Temperature-aware buffered caching for solid state storage |
CN102043732A (zh) * | 2010-12-30 | 2011-05-04 | 成都市华为赛门铁克科技有限公司 | 一种缓存分配方法及装置 |
-
2013
- 2013-10-25 CN CN201310512498.5A patent/CN103530240B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103336670A (zh) * | 2013-06-04 | 2013-10-02 | 华为技术有限公司 | 一种基于数据温度对数据块自动进行分布的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103530240A (zh) | 2014-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9256529B2 (en) | Flash memory controller | |
CN102156738A (zh) | 数据块处理方法、数据块存储设备及系统 | |
CN110008149A (zh) | 融合式存储器件及其操作方法 | |
EP3432157B1 (en) | Data table joining mode processing method and apparatus | |
CN105493194A (zh) | 使用基于温度的nand设置的闪速存储器系统耐久性改进 | |
US10496999B2 (en) | Method and apparatus of controlling network payment | |
CN102541470B (zh) | 数据对象的处理方法及装置 | |
US8667209B2 (en) | Non-volatile memory access method and system, and non-volatile memory controller | |
CN102722455B (zh) | 一种闪存设备中数据存储的方法及装置 | |
CN109753443A (zh) | 一种数据处理方法、装置及电子设备 | |
CN103530240B (zh) | 数据块缓存方法和装置 | |
CN104484233B (zh) | 一种资源分配方法 | |
CN103077121A (zh) | 一种闪存存储设备中数据管理的方法及装置 | |
CN102298543A (zh) | 一种存储器管理方法和装置 | |
US20120179883A1 (en) | System and method for dynamically adjusting memory performance | |
CN105137227A (zh) | 智能卡掉电保护的测试装置及方法 | |
CN105551522A (zh) | 闪存存储设备的管理方法及装置 | |
US20190042154A1 (en) | Memory block access modes for a storage device | |
CN102609741A (zh) | 一种移动设备及其内、外部存储卡间数据交换的方法 | |
US9104496B2 (en) | Submitting operations to a shared resource based on busy-to-success ratios | |
CN104991736A (zh) | 写数据方法、装置以及存储设备 | |
CN105094742B (zh) | 一种写数据的方法和设备 | |
CN103811070A (zh) | 一种高可靠性NAND Flash的读取方法及其系统 | |
CN102789422A (zh) | 固态硬盘的数据写入方法及系统 | |
CN108196954A (zh) | 一种文件读写方法、系统、设备及计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |