CN111858403A - 基于概率对访问频率计数的缓存数据热度管理方法及系统 - Google Patents
基于概率对访问频率计数的缓存数据热度管理方法及系统 Download PDFInfo
- Publication number
- CN111858403A CN111858403A CN202010693830.2A CN202010693830A CN111858403A CN 111858403 A CN111858403 A CN 111858403A CN 202010693830 A CN202010693830 A CN 202010693830A CN 111858403 A CN111858403 A CN 111858403A
- Authority
- CN
- China
- Prior art keywords
- access frequency
- cache
- access
- data
- data 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.)
- Granted
Links
- 238000007726 management method Methods 0.000 title claims abstract description 17
- 238000000034 method Methods 0.000 claims abstract description 16
- 230000002238 attenuated effect Effects 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 230000010485 coping Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 235000019633 pungent taste Nutrition 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本发明提供一种基于概率对访问频率计数的缓存数据热度管理方法及系统,所述方法:S1.设置缓存中数据以数据块为单位进行存储,并在数据块中设置热度统计数据结构,所述热度统计数据结构包括访问时间记录位和访问频率记录位;S2.缓存中数据块被访问时,记录数据块本次访问时间,基于概率对数据块访问频率进行计数,并更新热度统计数据结构中数据块访问频率和访问时间;S3.当有缓存请求时,判断缓存剩余空间是否达到设定阈值,并在缓存空间达到设定阈值时,从缓存中随机选取设定数量的数据块,再从选定的数据块中根据各自的访问频率和访问时间进行惰性衰减,根据惰性衰减结果从选定数据块中删除数据块,直至缓存剩余空间大于设定阈值。
Description
技术领域
本发明属于存储缓存管理技术领域,具体涉及一种基于概率对访问频率计数的缓存数据热度管理方法及系统。
背景技术
FIFO,是First In First out的缩写,先进先出,淘汰最先近来的页面,新进来的页面最迟被淘汰,完全符合队列。
LRU,是Least recently used的缩写,最近最少使用,淘汰最近不使用的页面。
LFU,是Least frequently used的缩写,最近使用次数最少,淘汰使用次数最少的页面。
在互联网和移动互联网两波浪潮的推动下,存储技术有了飞速发展。移动互联网用户在过去十年增长了10倍,用户的增长带动了数据量的指数级增长,因为激烈的市场竞争,企业和用户对应用程序的响应性能要求越来越高,在完美应对庞大的用户规模和海量数据集的同时保证优秀的产品体验,是存储系统面临的挑战。
缓存是指用于存储数据的硬件或软件组成部分,以使得后续更快的访问相应的数据。缓存是存储系统中的重要组件,主要解决高并发,大数据场景下,热点数据的访问性能问题,提供高性能的数据快速访问。
缓存调度算法是缓存实现的重要机制,主要是指:先分配一定的页面空间,使用页面的时候首先去查询空间是否有该页面的缓存,如果有的话直接拿出来,如果没有的话先查询,如果页面空间没有满的时候,使用新页面的时候,就释放旧的页面空间,把新页面缓存起来,以便下次使用同样的页面的时候方便调用。在实际场景中因为实现的过程以及淘汰旧页面的机制不同,所以会有不同缓存调度方法,就常见的就是FIFO,LRU,LFU缓存过期策略。
FIFO按照“先进先出”的原理淘汰数据,正好符合队列的特性,数据结构上使用队列Queue来实现。
LRU算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。
LFU算法根据数据的历史访问频率来淘汰数据,其核心思想是“如果数据过去被访问多次,那么将来被访问的频率也更高”。
单纯使用上述任何一种缓存调度方法都无法满足存储资源有限,而存储需求激增的现状。
此为现有技术的不足,因此,针对现有技术中的上述缺陷,提供一种基于概率对访问频率计数的缓存数据热度管理方法及系统,是非常有必要的。
发明内容
针对现有技术的上述缓存调度方法都无法满足存储资源有限,而存储需求激增现状的缺陷,本发明提供一种基于概率对访问频率计数的缓存数据热度管理方法及系统,以解决上述技术问题。
第一方面,本发明提供一种基于概率对访问频率计数的缓存数据热度管理方法,包括如下步骤:
S1.设置缓存中数据以数据块为单位进行存储,并在数据块中设置热度统计数据结构,所述热度统计数据结构包括访问时间记录位和访问频率记录位;
S2.缓存中数据块被访问时,记录数据块本次访问时间,基于概率对数据块访问频率进行计数,并更新热度统计数据结构中数据块访问频率和访问时间;
S3.当有新缓存请求时,判断缓存剩余空间是否达到设定阈值,并在缓存空间达到设定阈值时,从缓存中随机选取设定数量的数据块,再从选定的数据块中根据各自的访问频率和访问时间进行惰性衰减,根据惰性衰减结果从选定数据块中删除数据块,直至缓存剩余空间大于设定阈值。
进一步地,步骤S1中设置热度统计结构中访问时间记录位为Mbit,以及访问频率记录位为Nbit。
进一步地,步骤S2具体步骤如下:
S21.当缓存中数据块被访问时,通过热度访问结构记录该数据块本次访问时间,并对上次访问时间进行覆盖;
S22.设置数据块访问频率为hits,设置预留频率为reserve,设置概率因子为f,判断hits是否达到2N;
若是,记录hits=2N,其中,N为访问频率记录位的字节数量,进入步骤S3;
若否,进入步骤S23;
S23.设置频率基准为count,计算频率基准count=hits-reserve,并判断count是否小于0;
若是,则设置count=0,进入步骤S24;
若否,进入步骤S24;
S24.设置访问频率概率为p,计算访问频率概率p=1/(count*f+1);
S25.从0-1之间取随机数r,并判断r是否小于p;
若是,对访问频率进行计数,hits=hits+1,更新热度统计数据结构的访问频率记录位;
若否,不对访问频率计数。基于概率使用较少访问频率计数位,表示较大的访问频率。
进一步地,热度统计结构中访问时间记录位为24bit,访问频率记录位为8bit。8bit的访问频率计数位可表示100万次的访问频率。
进一步地,步骤S3具体步骤如下:
S31.当有新缓存请求时,判断缓存剩余空间是否小于设定阈值;
若是,进入步骤S32;
若否,进入步骤S35;
S32.从缓存的数据块中随机选取设定数量数据块,并计算每个数据块记录访问时间与当前时间的时间差,记录为δt;
S33.设定衰减因子为β,设置每间隔β分钟每个选定数据块的访问频率hits衰减设定值;
S34.将所有选定数据块访问频率衰减后值进行排序,选出衰减后访问频率hits值最小的数据块,进行释放,返回步骤S31;
S35.为新缓存请求分配缓存空间。在缓存空间不够时,对访问频率进行随机的惰性衰减,对衰减后的访问频率进行热度排序,从而对热度低的数据块进行删除。
进一步地,步骤S32中,选取的设定数量为10个;
步骤S33中,选定数据块的访问频率hits衰减设定值取1。
进一步地,步骤S3中还包括如下步骤:
当有新的缓存请求时,从当前存储设备中选择数据写入/读取速度最快的存储设备作为缓存,
或者,从当前存设备中选择距离请求缓存应用最近的存储设备作为缓存,
或者,从当前存储设备中选择距离请求缓存用户最近的存储设备作为缓存。使用缓存解决在高并发、大数据等场景下,对热点数据的访问性能问题,并提供高性能的数据访问。
第二方面,本发明提供一种基于概率对访问频率计数的缓存数据热度管理系统,包括:
热度统计结构设置模块,用于设置缓存中数据以数据块为单位进行存储,并在数据块中设置热度统计数据结构,所述热度统计数据结构包括访问时间记录位和访问频率记录位;
访问频率概率统计模块,用于当缓存中数据块被访问时,记录数据块本次访问时间,基于概率对数据块访问频率进行计数,并更新热度统计数据结构中数据块访问频率和访问时间;
缓存数据块惰性衰减模块,用于当有新缓存请求时,判断缓存剩余空间是否达到设定阈值,并在缓存空间达到设定阈值时,从缓存中随机选取设定数量的数据块,再从选定的数据块中根据各自的访问频率和访问时间进行惰性衰减,根据惰性衰减结果从选定数据块中删除数据块,直至缓存剩余空间大于设定阈值。
进一步地,热度统计结构中设置热度统计结构中访问时间记录位为Mbit,以及访问频率记录位为Nbit。
进一步地,访问频率概率统计模块包括:
访问时间记录单元,用于当缓存中数据块被访问时,通过热度访问结构记录该数据块本次访问时间,并对上次访问时间进行覆盖;
访问频率判断单元,用于设置数据块访问频率为hits,设置预留频率为reserve,设置概率因子为f,判断hits是否达到2N,并在hits达到2N时,记录hits=2N;
频率基准计算单元,用于当访问频率hits未达到2N时,设置频率基准为count,计算频率基准count=hits-reserve,并判断count是否小于0,并在count小于0时,设置count=0;
访问频率概率计算单元,用于设置访问频率概率为p,计算访问频率概率p=1/(count*f+1);
随机数与访问频率概率比较单元,用于从0-1之间取随机数r,并判断r是否小于p;
访问频率计数单元,用于在随机数r小于访问频率概率p时,对访问频率进行计数,hits=hits+1,更新热度统计数据结构的访问频率记录位,以及在随机数r大于都等于访问频率p时,不对访问频率计数。
进一步地,缓存数据块惰性衰减模块包括:
缓存空间判断单元,用于当有新缓存请求时,判断缓存剩余空间是否小于设定阈值;
数据块选择单元,用于当缓存剩余空间小于设定阈值时,从缓存的数据块中随机选取设定数量数据块,并计算每个数据块记录访问时间与当前时间的时间差,记录为δt;
访问频率衰减单元,用于设定衰减因子为β,设置每间隔β分钟每个选定数据块的访问频率hits衰减设定值;
数据块释放单元,用于将所有选定数据块访问频率衰减后值进行排序,选出衰减后访问频率hits值最小的数据块,进行释放;
缓存空间分配单元,用于当缓存空间大于等于设定阈值时,为新缓存请求分配缓存空间。
本发明的有益效果在于,
本发明提供的基于概率对访问频率计数的缓存数据热度管理方法及系统,基于概率使用较少访问频率计数位,表示较大的访问频率,如8bit的访问频率计数位可表示100万次的访问频率;在缓存空间不够时,对访问频率进行随机的惰性衰减,对衰减后的访问频率进行热度排序,从而对热度低的数据块进行删除,节约了内存的占用和CPU的计算,提高了缓存的使用效率和空间管理的资源消耗。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的方法流程示意图一;
图2是本发明的方法流程示意图二;
图3为本发明的系统示意图;
图中,1-热度统计结构设置模块;2-访问频率概率统计模块;2.1-访问时间记录单元;2.2-访问频率判断单元;2.3-频率基准计算单元;2.4-访问频率概率计算单元;2.5-随机数与访问频率概率比较单元;2.6-访问频率计数单元;3-缓存数据块惰性衰减模块;3.1-缓存空间判断单元;3.2-数据块选择单元;3.3-访问频率衰减单元;3.4-数据块释放单元;3.5-缓存空间分配单元。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
实施例1:
如图1所示,本发明提供一种基于概率对访问频率计数的缓存数据热度管理方法,包括如下步骤:
S1.设置缓存中数据以数据块为单位进行存储,并在数据块中设置热度统计数据结构,所述热度统计数据结构包括访问时间记录位和访问频率记录位;
S2.缓存中数据块被访问时,记录数据块本次访问时间,基于概率对数据块访问频率进行计数,并更新热度统计数据结构中数据块访问频率和访问时间;
S3.当有新缓存请求时,判断缓存剩余空间是否达到设定阈值,并在缓存空间达到设定阈值时,从缓存中随机选取设定数量的数据块,再从选定的数据块中根据各自的访问频率和访问时间进行惰性衰减,根据惰性衰减结果从选定数据块中删除数据块,直至缓存剩余空间大于设定阈值。
实施例2:
如图2所示,本发明提供一种基于概率对访问频率计数的缓存数据热度管理方法,包括如下步骤:
S1.设置缓存中数据以数据块为单位进行存储,并在数据块中设置热度统计数据结构,所述热度统计数据结构包括访问时间记录位和访问频率记录位;
设置热度统计结构中访问时间记录位为Mbit,以及访问频率记录位为Nbit;热度统计结构中访问时间记录位为24bit,访问频率记录位为8bit;
S2.缓存中数据块被访问时,记录数据块本次访问时间,基于概率对数据块访问频率进行计数,并更新热度统计数据结构中数据块访问频率和访问时间;具体步骤如下:
S21.当缓存中数据块被访问时,通过热度访问结构记录该数据块本次访问时间,并对上次访问时间进行覆盖;
S22.设置数据块访问频率为hits,设置预留频率为reserve,设置概率因子为f,判断hits是否达到2N,其中,N为访问频率记录位的字节数量;
若是,记录hits=2N,进入步骤S3;
若否,进入步骤S23;
S23.设置频率基准为count,计算频率基准count=hits-reserve,并判断count是否小于0;
若是,则设置count=0,进入步骤S24;
若否,进入步骤S24;
S24.设置访问频率概率为p,计算访问频率概率p=1/(count*f+1);
S25.从0-1之间取随机数r,并判断r是否小于p;
若是,对访问频率进行计数,hits=hits+1,更新热度统计数据结构的访问频率记录位;
若否,不对访问频率计数;
S3.当有新缓存请求时,判断缓存剩余空间是否达到设定阈值,并在缓存空间达到设定阈值时,从缓存中随机选取设定数量的数据块,再从选定的数据块中根据各自的访问频率和访问时间进行惰性衰减,根据惰性衰减结果从选定数据块中删除数据块,直至缓存剩余空间大于设定阈值;具体步骤如下:
S31.当有新缓存请求时,判断缓存剩余空间是否小于设定阈值;
若是,进入步骤S32;
若否,进入步骤S35;
S32.从缓存的数据块中随机选取设定数量数据块,并计算每个数据块记录访问时间与当前时间的时间差,记录为δt;选取的设定数量为10个;
S33.设定衰减因子为β,设置每间隔β分钟每个选定数据块的访问频率hits衰减设定值;选定数据块的访问频率hits衰减设定值取1;
S34.将所有选定数据块访问频率衰减后值进行排序,选出衰减后访问频率hits值最小的数据块,进行释放,返回步骤S31;
S35.为新缓存请求分配缓存空间。
在某些实施例中,步骤S3中还包括如下步骤:
当有新的缓存请求时,从当前存储设备中选择数据写入/读取速度最快的存储设备作为缓存,
或者,从当前存设备中选择距离请求缓存应用最近的存储设备作为缓存,或者,从当前存储设备中选择距离请求缓存用户最近的存储设备作为缓存。
实施例3:
如图3所示,本发明提供一种基于概率对访问频率计数的缓存数据热度管理系统,包括:
热度统计结构设置模块1,用于设置缓存中数据以数据块为单位进行存储,并在数据块中设置热度统计数据结构,所述热度统计数据结构包括访问时间记录位和访问频率记录位;设置热度统计结构中访问时间记录位为Mbit,以及访问频率记录位为Nbit;
访问频率概率统计模块2,用于当缓存中数据块被访问时,记录数据块本次访问时间,基于概率对数据块访问频率进行计数,并更新热度统计数据结构中数据块访问频率和访问时间;访问频率概率统计模块2包括:
访问时间记录单元2.1,用于当缓存中数据块被访问时,通过热度访问结构记录该数据块本次访问时间,并对上次访问时间进行覆盖;
访问频率判断单元2.2,用于设置数据块访问频率为hits,设置预留频率为reserve,设置概率因子为f,判断hits是否达到2N,并在hits达到2N时,记录hits=2N,其中,N为访问频率记录位的字节数量;
频率基准计算单元2.3,用于当访问频率hits未达到2N时,设置频率基准为count,计算频率基准count=hits-reserve,并判断count是否小于0,并在count小于0时,设置count=0;
访问频率概率计算单元2.4,用于设置访问频率概率为p,计算访问频率概率p=1/(count*f+1);
随机数与访问频率概率比较单元2.5,用于从0-1之间取随机数r,并判断r是否小于p;
访问频率计数单元2.6,用于在随机数r小于访问频率概率p时,对访问频率进行计数,hits=hits+1,更新热度统计数据结构的访问频率记录位,以及在随机数r大于都等于访问频率p时,不对访问频率计数;
缓存数据块惰性衰减模块3,用于当有新缓存请求时,判断缓存剩余空间是否达到设定阈值,并在缓存空间达到设定阈值时,从缓存中随机选取设定数量的数据块,再从选定的数据块中根据各自的访问频率和访问时间进行惰性衰减,根据惰性衰减结果从选定数据块中删除数据块,直至缓存剩余空间大于设定阈值;缓存数据块惰性衰减模块3包括:
缓存空间判断单元3.1,用于当有新缓存请求时,判断缓存剩余空间是否小于设定阈值;
数据块选择单元3.2,用于当缓存剩余空间小于设定阈值时,从缓存的数据块中随机选取设定数量数据块,并计算每个数据块记录访问时间与当前时间的时间差,记录为δt;
访问频率衰减单元3.3,用于设定衰减因子为β,设置每间隔β分钟每个选定数据块的访问频率hits衰减设定值;
数据块释放单元3.4,用于将所有选定数据块访问频率衰减后值进行排序,选出衰减后访问频率hits值最小的数据块,进行释放;
缓存空间分配单元3.5,用于当缓存空间大于等于设定阈值时,为新缓存请求分配缓存空间。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种基于概率对访问频率计数的缓存数据热度管理方法,其特征在于,包括如下步骤:
S1.设置缓存中数据以数据块为单位进行存储,并在数据块中设置热度统计数据结构,所述热度统计数据结构包括访问时间记录位和访问频率记录位;
S2.缓存中数据块被访问时,记录数据块本次访问时间,基于概率对数据块访问频率进行计数,并更新热度统计数据结构中数据块访问频率和访问时间;
S3.当有新缓存请求时,判断缓存剩余空间是否达到设定阈值,并在缓存空间达到设定阈值时,从缓存中随机选取设定数量的数据块,再从选定的数据块中根据各自的访问频率和访问时间进行惰性衰减,根据惰性衰减结果从选定数据块中删除数据块,直至缓存剩余空间大于设定阈值。
2.如权利要求1所述的基于概率对访问频率计数的缓存数据热度管理方法,其特征在于,步骤S1中设置热度统计结构中访问时间记录位为Mbit,以及访问频率记录位为Nbit。
3.如权利要求2所述的基于概率对访问频率计数的缓存数据热度管理方法,其特征在于,步骤S2具体步骤如下:
S21.当缓存中数据块被访问时,通过热度访问结构记录该数据块本次访问时间,并对上次访问时间进行覆盖;
S22.设置数据块访问频率为hits,设置预留频率为reserve,设置概率因子为f,判断hits是否达到2N,其中,N为访问频率记录位的字节数量;
若是,记录hits=2N,进入步骤S3;
若否,进入步骤S23;
S23.设置频率基准为count,计算频率基准count=hits-reserve,并判断count是否小于0;
若是,则设置count=0,进入步骤S24;
若否,进入步骤S24;
S24.设置访问频率概率为p,计算访问频率概率p=1/(count*f+1);
S25.从0-1之间取随机数r,并判断r是否小于p;
若是,对访问频率进行计数,hits=hits+1,更新热度统计数据结构的访问频率记录位;
若否,不对访问频率计数。
4.如权利要求2或3所述的基于概率对访问频率计数的缓存数据热度管理方法,其特征在于,热度统计结构中访问时间记录位为24bit,访问频率记录位为8bit。
5.如权利要求3所述的基于概率对访问频率计数的缓存数据热度管理方法,其特征在于,步骤S3具体步骤如下:
S31.当有新缓存请求时,判断缓存剩余空间是否小于设定阈值;
若是,进入步骤S32;
若否,进入步骤S35;
S32.从缓存的数据块中随机选取设定数量数据块,并计算每个数据块记录访问时间与当前时间的时间差,记录为δt;
S33.设定衰减因子为β,设置每间隔β分钟每个选定数据块的访问频率hits衰减设定值;
S34.将所有选定数据块访问频率衰减后值进行排序,选出衰减后访问频率hits值最小的数据块,进行释放,返回步骤S31;
S35.为新缓存请求分配缓存空间。
6.如权利要求5所述的基于概率对访问频率计数的缓存数据热度管理方法,其特征在于,步骤S32中,选取的设定数量为10个;
步骤S33中,选定数据块的访问频率hits衰减设定值取1。
7.如权利要求1所述的基于概率对访问频率计数的缓存数据热度管理方法,其特征在于,步骤S3中还包括如下步骤:
当有新的缓存请求时,从当前存储设备中选择数据写入/读取速度最快的存储设备作为缓存,
或者,从当前存设备中选择距离请求缓存应用最近的存储设备作为缓存,
或者,从当前存储设备中选择距离请求缓存用户最近的存储设备作为缓存。
8.一种基于概率对访问频率计数的缓存数据热度管理系统,其特征在于,包括:
热度统计结构设置模块(1),用于设置缓存中数据以数据块为单位进行存储,并在数据块中设置热度统计数据结构,所述热度统计数据结构包括访问时间记录位和访问频率记录位;
访问频率概率统计模块(2),用于当缓存中数据块被访问时,记录数据块本次访问时间,基于概率对数据块访问频率进行计数,并更新热度统计数据结构中数据块访问频率和访问时间;
缓存数据块惰性衰减模块(3),用于当有新缓存请求时,判断缓存剩余空间是否达到设定阈值,并在缓存空间达到设定阈值时,从缓存中随机选取设定数量的数据块,再从选定的数据块中根据各自的访问频率和访问时间进行惰性衰减,根据惰性衰减结果从选定数据块中删除数据块,直至缓存剩余空间大于设定阈值。
9.如权利要求8所述的基于概率对访问频率计数的缓存数据热度管理系统,其特征在于,访问频率概率统计模块(2)包括:
访问时间记录单元(2.1),用于当缓存中数据块被访问时,通过热度访问结构记录该数据块本次访问时间,并对上次访问时间进行覆盖;
访问频率判断单元(2.2),用于设置数据块访问频率为hits,设置预留频率为reserve,设置概率因子为f,判断hits是否达到2N,并在hits达到2N时,记录hits=2N,其中,N为访问频率记录位的字节数量;
频率基准计算单元(2.3),用于当访问频率hits未达到2N时,设置频率基准为count,计算频率基准count=hits-reserve,并判断count是否小于0,并在count小于0时,设置count=0;
访问频率概率计算单元(2.4),用于设置访问频率概率为p,计算访问频率概率p=1/(count*f+1);
随机数与访问频率概率比较单元(2.5),用于从0-1之间取随机数r,并判断r是否小于p;
访问频率计数单元(2.6),用于在随机数r小于访问频率概率p时,对访问频率进行计数,hits=hits+1,更新热度统计数据结构的访问频率记录位,以及在随机数r大于都等于访问频率p时,不对访问频率计数。
10.如权利要求8所述的基于概率对访问频率计数的缓存数据热度管理系统,其特征在于,
缓存数据块惰性衰减模块(3)包括:
缓存空间判断单元(3.1),用于当有新缓存请求时,判断缓存剩余空间是否小于设定阈值;
数据块选择单元(3.2),用于当缓存剩余空间小于设定阈值时,从缓存的数据块中随机选取设定数量数据块,并计算每个数据块记录访问时间与当前时间的时间差,记录为δt;
访问频率衰减单元(3.3),用于设定衰减因子为β,设置每间隔β分钟每个选定数据块的访问频率hits衰减设定值;
数据块释放单元(3.4),用于将所有选定数据块访问频率衰减后值进行排序,选出衰减后访问频率hits值最小的数据块,进行释放;
缓存空间分配单元(3.5),用于当缓存空间大于等于设定阈值时,为新缓存请求分配缓存空间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010693830.2A CN111858403B (zh) | 2020-07-17 | 2020-07-17 | 基于概率对访问频率计数的缓存数据热度管理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010693830.2A CN111858403B (zh) | 2020-07-17 | 2020-07-17 | 基于概率对访问频率计数的缓存数据热度管理方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111858403A true CN111858403A (zh) | 2020-10-30 |
CN111858403B CN111858403B (zh) | 2022-07-08 |
Family
ID=73001310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010693830.2A Active CN111858403B (zh) | 2020-07-17 | 2020-07-17 | 基于概率对访问频率计数的缓存数据热度管理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111858403B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631963A (zh) * | 2020-12-25 | 2021-04-09 | 北京奇艺世纪科技有限公司 | 缓存数据管理方法、装置、设备及存储介质 |
CN113111014A (zh) * | 2021-04-07 | 2021-07-13 | 山东英信计算机技术有限公司 | 缓存中非热点数据的清理方法、装置、设备及存储介质 |
CN113608897A (zh) * | 2021-08-24 | 2021-11-05 | 京东科技控股股份有限公司 | 数据处理和应用服务器运行的方法、装置、设备及介质 |
WO2022148306A1 (zh) * | 2021-01-07 | 2022-07-14 | 华为云计算技术有限公司 | 一种淘汰数据的方法、装置、缓存节点以及缓存系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5822759A (en) * | 1996-11-22 | 1998-10-13 | Versant Object Technology | Cache system |
CN104794064A (zh) * | 2015-04-21 | 2015-07-22 | 华中科技大学 | 一种基于区域热度的缓存管理方法 |
-
2020
- 2020-07-17 CN CN202010693830.2A patent/CN111858403B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5822759A (en) * | 1996-11-22 | 1998-10-13 | Versant Object Technology | Cache system |
CN104794064A (zh) * | 2015-04-21 | 2015-07-22 | 华中科技大学 | 一种基于区域热度的缓存管理方法 |
Non-Patent Citations (1)
Title |
---|
陆小霞: "基于Ceph的小文件预取缓存算法", 《电脑知识与技术》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631963A (zh) * | 2020-12-25 | 2021-04-09 | 北京奇艺世纪科技有限公司 | 缓存数据管理方法、装置、设备及存储介质 |
CN112631963B (zh) * | 2020-12-25 | 2023-09-01 | 北京奇艺世纪科技有限公司 | 缓存数据管理方法、装置、设备及存储介质 |
WO2022148306A1 (zh) * | 2021-01-07 | 2022-07-14 | 华为云计算技术有限公司 | 一种淘汰数据的方法、装置、缓存节点以及缓存系统 |
CN113111014A (zh) * | 2021-04-07 | 2021-07-13 | 山东英信计算机技术有限公司 | 缓存中非热点数据的清理方法、装置、设备及存储介质 |
CN113608897A (zh) * | 2021-08-24 | 2021-11-05 | 京东科技控股股份有限公司 | 数据处理和应用服务器运行的方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111858403B (zh) | 2022-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111858403B (zh) | 基于概率对访问频率计数的缓存数据热度管理方法及系统 | |
CN108763110B (zh) | 一种数据缓存方法及装置 | |
EP3125131B1 (en) | System and method of caching information | |
CN107066397B (zh) | 用于管理数据迁移的方法、系统和存储介质 | |
WO2016141735A1 (zh) | 缓存数据的确定方法及装置 | |
WO2005045708A1 (en) | Method for prioritizing segments of multimedia content in a proxy cache | |
CN103178989B (zh) | 访问热度统计方法及装置 | |
CN107301215B (zh) | 一种搜索结果缓存方法及装置、搜索方法及装置 | |
CN108984130A (zh) | 一种分布式存储的缓存读取方法及其装置 | |
CN111737170B (zh) | 一种缓存数据管理方法、系统、终端及存储介质 | |
CN110413545B (zh) | 存储管理方法、电子设备和计算机程序产品 | |
CN113094392A (zh) | 数据缓存的方法和装置 | |
CN112000281A (zh) | 一种存储系统重删元数据的缓存方法、系统及装置 | |
EP3274844B1 (en) | Hierarchical cost based caching for online media | |
CN111913913A (zh) | 访问请求的处理方法和装置 | |
CN116027982A (zh) | 数据处理方法、设备及可读存储介质 | |
CN115203072A (zh) | 一种基于访问热度的文件预读缓存分配方法及装置 | |
CN109582233A (zh) | 一种数据的缓存方法和装置 | |
Bžoch et al. | Towards caching algorithm applicable to mobile clients | |
EP0905619A2 (en) | A list management system and method | |
US9118526B2 (en) | Method and apparatus for controlling data storage | |
CN107846328B (zh) | 基于并发无锁环形队列的网络速率实时统计方法 | |
CN116107926B (zh) | 缓存替换策略的管理方法、装置、设备、介质和程序产品 | |
CN117785933A (zh) | 一种数据缓存方法、装置、设备及可读存储介质 | |
CN109947665B (zh) | 一种缓存方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |