CN110119487B - 一种适用于发散数据的缓存更新方法 - Google Patents

一种适用于发散数据的缓存更新方法 Download PDF

Info

Publication number
CN110119487B
CN110119487B CN201910297265.5A CN201910297265A CN110119487B CN 110119487 B CN110119487 B CN 110119487B CN 201910297265 A CN201910297265 A CN 201910297265A CN 110119487 B CN110119487 B CN 110119487B
Authority
CN
China
Prior art keywords
cache
data
queue
state
item
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.)
Expired - Fee Related
Application number
CN201910297265.5A
Other languages
English (en)
Other versions
CN110119487A (zh
Inventor
李拥军
郑旭
谢嵘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN201910297265.5A priority Critical patent/CN110119487B/zh
Publication of CN110119487A publication Critical patent/CN110119487A/zh
Application granted granted Critical
Publication of CN110119487B publication Critical patent/CN110119487B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种适用于发散数据的缓存更新方法。该方法针对发散数据的缓存命中率较低和易受历史数据影响的问题,设计了双缓存队列,其中一个缓存队列A主要根据数据访问情况来进行缓存更新,另一个缓存队列B通过数据更新情况来进行缓存更新,前者的容量相对后者更大。缓存队列A维护一个访问标志,空间满时将会进行扩容或者删除某些标志的缓存项。缓存队列B维护缓存项的更新时间,空间满时将会删除最先更新的缓存项。本发明解决了传统缓存更新算法在数据发散情况下缓存命中率较低的问题,同时也避免了历史数据污染的情况,对数据访问变化较为敏感,可以快速适应,利用较小的内存空间实现了较高的缓存命中率。

Description

一种适用于发散数据的缓存更新方法
技术领域
本发明涉及一种缓存更新方法,特别是涉及一种发散数据情况下的缓存更新方法。
背景技术
随着互联网的发展,互联网用户数量急剧增长。很多系统的并发量也随之攀升,数据库的操作成为系统的并发瓶颈。研究发现,大多数的数据请求为查询请求,因此可以通过高速缓存来避免占用数据库资源,当缓存不命中时才去请求数据库数据。实际生产中,不仅仅服务端会用到高速缓存,也有不少客户端中有相应的缓存机制。缓存在服务端的应用效果较好,极大的提升了系统的并发量。然而,缓存容量无法无限制扩大,当大量数据加入缓存时,需要根据缓存更新算法进行取舍。
现在大多数情况下,服务器端的数据访问往往在一个时间段内大量的请求都是指向某一小部分的数据。这部分热点数据是缓存的主要内容,所以缓存更新方法主要做的工作就是将热点内容挑选出来,当缓存空间占用满时将非热点内容删除。传统的缓存更新方法通常更适合于集中的数据访问模式,也拥有较高的缓存命中率。较为常见的传统缓存更新算法主要包括:
1)FIFO(First In First Out),是一种先进先出的策略。这种算法删除旧缓存的主要依据是缓存项加入的时间。缓存已满的情况下,在增加新的缓存项之前删除最早进入缓存中的缓存项。这种算法认为曾经未读取过的新信息更有可能被读取,或者也可以理解为信息读取不存在明显的规律性。
2)LRU(Least Recently Used),是一种基于最近访问时间的策略。在缓存满的时候,它优先删除最长时间未访问到的缓存项。这种算法主要基于近期访问过的数据,在未来有较大概率访问到的情况。在很多场景中会存在一种情况,在一个时间段内,某些数据被频繁访问,而另一个时间段,可能另外的数据又会被频繁访问,这其实就是热点数据效应。但是LRU也会有一定的缺陷,某些偶发性的操作或者周期性的操作并不适合使用LRU,因为在这些情况下,LRU的命中率会急剧下降。
3)LFU(Least Frequently Used)是基于访问频次的缓存策略。它会优先淘汰那些访问频次较低的缓存项。该算法主要思想是,一个数据若在过去多次被访问,那么它未来也有很大概率会访问到。实践中,LFU的情况很常见,它与LRU差不多,也是用于处理热点数据,但是通常拥有更高的命中率。但LFU也存在一定的问题,它不能根据数据访问的情况及时做出调整,相比其他算法它需要更长的时间来适应新的数据访问模式,因为缓存中的“历史数据”需要较长的周期才能更迭。
然而,当数据访问较为发散,不存在热点数据效应的情况下,传统缓存更新方法的命中率会出现大幅下降的情况。同时,当数据访问模式变化时,很多传统缓存更新方法无法快速适应新的数据访问模式。
发明内容
本发明针对传统缓存更新方法在发散数据访问情况下存在的不足,提供了一种适用于发散数据的缓存更新方法。
本发明主要应用于发散数据的缓存更新。因为内存容量有限,缓存无法无限扩大,需要某种策略来更新缓存信息。最有效的策略显然是,当缓存满时优先丢弃在未来最长时间内不会使用到的缓存项。但是在实践中,未来的信息难以预测,只能通过缓存更新方法来提高缓存命中率。现有的缓存更新方法对热点数据效果较好,本发明对发散数据的效果更好,因为本发明对标志位状态一样的缓存项进行统一处理,发散数据的特征是访问一次的数据较多,这些数据进入缓存称为缓存项,标志位状态为1,在空间满的情况下,可以通过删除低状态值的缓存项来去除发散数据,剩下的缓存项的被访问的可能性较大。
本发明维护双缓存队列,缓存队列A主要根据数据访问情况进行更新,缓存队列A的存储空间较大,是主要缓存,缓存队列B主要根据数据更新情况进行更新,缓存队列B的存储空间较小,作为辅助缓存;
本发明缓存队列A中每个缓存项维护一个访问标志,其随着访问次数而更新,但是存在上限,每扩容一次标志上限将提升1个单位;
本发明缓存队列A扩容存在上限,且随着扩容次数增多,每次增加的容量有所减少,按照扩容公式,其容量最终趋于20,其中M0为缓存队列A的初始容量;
本发明缓存队列B中每个缓存项维护一个缓存id,缓存id实质上是一个递增的操作号,优先删除小id缓存。
本发明目的通过如下技术方案实现:
一种适用于发散数据的缓存更新方法,包括主缓存队列更新缓存和辅助缓存队列更新缓存;
所述的主缓存队列更新缓存包含主要步骤如下:
S1:为每一个缓存项设置一个标志位,首次查找该缓存项的数据时,将该数据加入缓存队列A并标记为1状态,如果之后再次查找该数据,首先从缓存中查找并命中该缓存项,将缓存队列A中被命中的1状态的缓存项改为2状态,达到初始状态下标志位状态值上限,初始状态下标志位状态值上限为2,命中状态为2的缓存项则不做处理;
缓存队列A中各缓存项维护了一个标志位状态,且标志位状态值不得高于状态值上限,初始状态值上限为2,每扩容一次状态值上限增加1;每次命中缓存项,该缓存项的状态值增加1,达到状态值上限时不增加;
S2:当缓存空间满时,若发现非1状态的缓存项数量超过总缓存项数量预设扩容比例并且未达到扩容次数上限时,执行扩容操作,每执行一次扩容,标志位状态值上限加1个单位;判断当前扩容次数n、获取当前主缓存队列A当前的容量Mp以及初始容量M0;计算扩容后主缓存队列A的容量,计算公式为:
Figure GDA0003042052020000031
Mn为主缓存队列A扩容n次后的容量大小;当前扩容次数n=0时,Mn为主缓存队列A初始容量;
S3:若非1状态的缓存项数量超过总缓存项数量的预设扩容比例但是已达扩容上限,执行降级操作:删除所有标志位为1状态的缓存项;将所有缓存项的状态值减去1个单位;
S4:若未执行扩容以及降级操作,删除所有状态为1的缓存项;
S5:若未执行扩容以及降级操作,且可用缓存空间仍不足总空间的一半,那么继续删除更高状态值的缓存项,每一种状态值中最多可随机删除2n+2-f个缓存项,其中n为扩容次数,f为标志位的状态值;
S6:加入新缓存项,其标志位状态设为1;
所述的辅助缓存队列更新缓存包含主要步骤如下:
S7:判断数据操作类型;
S8:若为删除操作,若主缓存队列A中有该数据,则删除;
S9:若辅助缓存队列B中有该数据,则删除;
S10:若为插入操作,若辅助缓存队列B空间已满,删除最小id的缓存项;id是缓存项的标记;
S11:将数据加入辅助缓存队列B中并标记其id;
S12:若为更新操作,且主缓存队列A中有该数据,则更新缓存队列A中的缓存内容;
S13:删除辅助缓存队列B中该缓存项;
S14:若主缓存队列A中无该数据,更新辅助缓存队列B中该缓存项内容及id;
S15:若为查询操作,且命中辅助缓存队列B中的缓存项,将该缓存项删除;
S16:若未命中主缓存,将命中的缓存项加入主缓存队列A中;
S17:将主缓存队列中该缓存项的标志位状态提升1个单位。
优选地,所述的数据指key:value形式的信息,其中key和value的类型范围包括字符串类型、整型、浮点数类型以及由字符串、整型和浮点数类型组合成的复合结构。key:value是一种映射结构,成对出现,value是实际使用的信息,key是用来作为查找索引的信息,通过key可以查找到key:value数据,从而得到需要使用的value信息。
优选地,步骤S1中,命中缓存是指数据经过查询后加入到缓存中,此时再次查询该数据,首先查找到缓存中的该数据。
优选地,步骤S2中,预设扩容比例的范围为
Figure GDA0003042052020000041
优选地,步骤S10中,id按照缓存项加入缓存的时间先后从1开始递增,第一个加入缓存的缓存项id为1,第二个加入的缓存项id为2。
本发明与现有缓存更新方法相比,具有以下显著优势:
(1)减少了历史数据对缓存的影响,可以实现历史数据的快速迭代,较快速适应新的数据访问模式;
(2)在访问发散数据情况下,针对发散数据访问模式的特点,特别注意某些可能多次访问的数据,有较高的缓存命中率;
(3)在访问发散数据情况下,大多数的数据是无效数据,无需进行缓存或者缓存后可快速删除,缓存仅需占用较小的内存空间。
(4)本发明解决了传统缓存更新算法在数据发散情况下缓存命中率较低的问题,同时也避免了历史数据污染的情况,对数据访问变化较为敏感,可以快速适应,利用较小的内存空间实现了较高的缓存命中率。
附图说明
图1为本发明所述缓存结构示意图。
图2为本发明所述主缓存队列更新流程图。
图3为本发明所述辅助缓存队列更新流程图。
具体实施方式
为更好地理解本发明,下面结合附图和实施例对本发明作进一步说明,需要说明的是,本发明的实施方式不限于此。
本发明一种适用于发散数据的缓存更新方法中包含两个缓存队列,主缓存队列A的存储空间大于辅助缓存队列B的存储空间,两个缓存队列都可以存储缓存项,缓存项就是加入缓存的数据,数据是指key:value形式的信息,其中key和value的类型范围包括字符串类型、整型、浮点数类型以及由字符串、整型和浮点数类型组合成的复合结构。主缓存队列A和辅助缓存队列B都有加入缓存项和删除缓存项的操作,并可以根据key的值查找缓存项,结果包含找到和未找到两种可能。主缓存队列A和辅助缓存队列B还可以对缓存项的内容进行修改。
主缓存队列A和辅助缓存队列B的容量在使用本发明方法时根据实际情况设置,且主缓存队列A和辅助缓存队列B中的缓存项可由key通过具体的映射关系查找到;主缓存队列A中状态值相同的缓存项进行统一管理,可以统计各状态值的缓存项的数量。主缓存队列A中预设扩容比例是一个用于控制主缓存队列是否需要扩容的比例值,在使用本发明方法时可以根据实际情况设置。
实施例
本实施例具体参数情况如下:主缓存队列容量设为1024,辅助缓存队列容量设为100,预设扩容比例设为三分之二;
初始时,主缓存队列中装满缓存和辅助缓存队列已满。
如图1为适用于发散数据的缓存更新方法的缓存模型示意图。模型中分为两个缓存队列,主缓存队列中存在各种标志位状态的缓存项,在缓存满时,主要根据标志位进行统一处理;辅助缓存队列类似于一个先进先出的队列结构,但是当其中的缓存项有再次更新的情况时,会更新该缓存项的id。一种适用于发散数据的缓存更新方法,包括主缓存队列更新缓存和辅助缓存队列更新缓存。
如图2所示,为主缓存队列更新缓存的具体流程,包括以下步骤:
步骤201:为每一个缓存项设置一个标志位,首次查找该缓存项的数据时,将该数据加入缓存队列A并标记为1状态,如果之后再次查找该数据,首先从缓存中查找并命中该缓存项,将缓存队列A中被命中的1状态的缓存项改为2状态,达到初始状态下标志位状态值上限,初始状态下标志位状态值上限为2,命中状态为2的缓存项则不做处理;
缓存队列A中各缓存项维护了一个标志位状态,且标志位状态值不得高于状态值上限,初始状态值上限为2,每扩容一次状态值上限增加1;每次命中缓存项,该缓存项的状态值增加1,达到状态值上限时不增加;
本实施例当命中缓存项C后,若该缓存项标志位状态为1,提升为2状态;若该缓存项标志位状态为2,已达状态上限,不做处理。
步骤202:当缓存项C未命中时,需要向主缓存队列加入缓存项C,根据设定参数,此时主缓存空间已满,若标志位非1状态的缓存多于总缓存数的三分之二,且未达到扩容上限,执行扩容操作。
步骤203:若主缓存队列中非1状态缓存数量超过总缓存数的三分之二,当前状态上限为12,即已达10次扩容上限,无法扩容,执行降级操作,状态为12的缓存项状态变为11,以此类推,直到状态为2的缓存项状态变为1,原状态为1的缓存项删除。
步骤204:若主缓存队列中非1状态缓存数量未超过总缓存数的三分之二,删除所有状态为1的缓存项。
步骤205:判断此时主缓存队列可用空间,若小于总空间的一半,此时扩容次数为n,在n状态的缓存项中随机删除2n+2-(n+2)=1个缓存项,以此类推,在2状态的缓存项中随机删除2n+2-2=2n个缓存项。
步骤206:加入新的缓存项C,其标志位状态为1。
如图3所示,为辅助缓存队列更新缓存的具体流程,具体来说,为以下步骤:
步骤301:判断操作类型。
场景1:删除缓存项C;
步骤302:若主缓存队列中存在缓存项C,删除缓存项C。
步骤303:若辅助缓存队列中存在缓存项C,删除缓存项C。
场景2:新增操作数据项D;
步骤304:删除辅助缓存队列中最小id的缓存项C。
步骤305:将数据项D加入缓存。
场景3:更新缓存内容C,其key为c,value更改为v;
步骤306:若主缓存队列中存在该缓存项,将其值更新为v,并执行步骤307,否则直接执行步骤308。
步骤307:删除辅助缓存队列中缓存项C。
步骤308:更新辅助缓存中缓存项C的值为v,刷新缓存项C的id为当前递增到的id值I。
场景4:查询数据项D;
步骤309:若命中辅助缓存,在辅助缓存队列中删除数据项D对应的缓存项。
步骤310:若主缓存队列未命中,将数据项D加入主缓存队列中缓存;
步骤311:将主缓存队列中数据项D对应的缓存项的状态提升一个单位。
现有的缓存更新方法,不存在双缓存队列,查询操作和更新操作同时影响一个缓存队列,而本发明使用了双缓存队列,查询主要影响主缓存队列,更新操作主要影响辅助缓存队列。如实施例中步骤202中,主缓存队列在容量不足时,高状态位缓存数量较多的情况下会首先选择扩容,这也是为了留存更多的空间给新加入的缓存项,因为这些缓存项中也有可能存在会被多次访问的数据;而现有的缓存更新算法通常缓存容量都是固定的,并没有扩容操作,缓存容量大小与计算机内容容量大小有关。
本发明在高状态位缓存项较多且达到扩容次数上限时,步骤203还有降级操作,将所有缓存项的状态值都减小1,这样处理留存更多的空间给新的缓存项;而现有缓存更新方法如LFU只统计缓存命中次数,而不会存在将次数降低的情况。
本发明对标志位相同的缓存项进行统一管理,如步骤204中删除所有状态值为1的缓存项,这样可以更高效地对缓存进行管理,因为发散数据的访问模式中,状态值为1的缓存项的数量较多,统一处理会比单次处理一个缓存项的效率更高;而现有缓存更新方法如FIFO、LRU、LFO一次只会处理单个缓存项。
本发明减少了历史数据对缓存的影响,可以实现历史数据的快速迭代,较快速适应新的数据访问模式;
本发明在访问发散数据情况下,针对发散数据访问模式的特点,特别注意某些可能多次访问的数据,有较高的缓存命中率;
本发明在访问发散数据情况下,大多数的数据是无效数据,无需进行缓存或者缓存后可快速删除,缓存仅需占用较小的内存空间。
本发明解决了传统缓存更新算法在数据发散情况下缓存命中率较低的问题,同时也避免了历史数据污染的情况,对数据访问变化较为敏感,可以快速适应,利用较小的内存空间实现了较高的缓存命中率。
本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (5)

1.一种适用于发散数据的缓存更新方法,其特征在于:包括主缓存队列A更新缓存和辅助缓存队列更新缓存;
所述的主缓存队列A更新缓存包含主要步骤如下:
S1:为每一个缓存项设置一个标志位,首次查找该缓存项的数据时,将该数据加入缓存队列A并标记为1状态,如果之后再次查找该数据,首先从缓存中查找并命中该缓存项,将缓存队列A中被命中的1状态的缓存项改为2状态,达到初始状态下标志位状态值上限,初始状态下标志位状态值上限为2,命中状态为2的缓存项则不做处理;
缓存队列A中各缓存项维护了一个标志位状态,且标志位状态值不得高于状态值上限,初始状态值上限为2,每扩容一次状态值上限增加1;每次命中缓存项,该缓存项的状态值增加1,达到状态值上限时不增加;
S2:当缓存空间满时,若发现非1状态的缓存项数量超过总缓存项数量预设扩容比例并且未达到扩容次数上限时,执行扩容操作,每执行一次扩容,标志位状态值上限加1个单位;判断当前扩容次数n、获取当前主缓存队列A当前的容量Mp以及初始容量M0;计算扩容后主缓存队列A的容量,计算公式为:
Figure FDA0003042052010000011
Mn为主缓存队列A扩容n次后的容量大小;当扩容次数n=0时,Mn为主缓存队列A初始容量;
S3:若非1状态的缓存项数量超过总缓存项数量的预设扩容比例但是已达扩容上限,执行降级操作:删除所有标志位为1状态的缓存项;将所有缓存项的状态值减去1个单位;
S4:若未执行扩容以及降级操作,删除所有状态为1的缓存项;
S5:若未执行扩容以及降级操作,且可用缓存空间仍不足总空间的一半,继续删除更高状态值的缓存项,每一种状态值中最多可随机删除2n+2-f个缓存项,其中n为扩容次数,f为标志位的状态值;
S6:加入新缓存项,其标志位状态设为1;
所述的辅助缓存队列更新缓存包含主要步骤如下:
S7:判断数据操作类型;
S8:若为删除操作,若主缓存队列A中有该数据,则删除;
S9:若辅助缓存队列B中有该数据,则删除;
S10:若为插入操作,若辅助缓存队列B空间已满,删除最小id的缓存项;id是缓存项的标记;
S11:将数据加入辅助缓存队列B中并标记其id;
S12:若为更新操作,且主缓存队列A中有该数据,则更新缓存队列A中的缓存内容;
S13:删除辅助缓存队列B中该缓存项;
S14:若主缓存队列A中无该数据,更新辅助缓存队列B中该缓存项内容及id;
S15:若为查询操作,且命中辅助缓存队列B中的缓存项,将该缓存项删除;
S16:若未命中主缓存,将命中的缓存项加入主缓存队列A中;
S17:将主缓存队列A中该缓存项的标志位状态提升1个单位。
2.根据权利要求1所述的一种适用于发散数据的缓存更新方法,其特征在于:所述的数据指key:value形式的信息,其中key和value的类型范围包括字符串类型、整型、浮点数类型以及由字符串、整型和浮点数类型组合成的复合结构。
3.根据权利要求1所述的一种适用于发散数据的缓存更新方法,其特征在于:步骤S1中,命中缓存是指数据经过查询后加入到缓存中,此时再次查询该数据,首先查找到缓存中的该数据。
4.根据权利要求1所述的一种适用于发散数据的缓存更新方法,其特征在于:步骤S2中,预设扩容比例的范围为
Figure FDA0003042052010000021
5.根据权利要求1所述的一种适用于发散数据的缓存更新方法,其特征在于:步骤S10中,id按照缓存项加入缓存的时间先后从1开始递增,第一个加入缓存的缓存项id为1,第二个加入的缓存项id为2。
CN201910297265.5A 2019-04-15 2019-04-15 一种适用于发散数据的缓存更新方法 Expired - Fee Related CN110119487B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910297265.5A CN110119487B (zh) 2019-04-15 2019-04-15 一种适用于发散数据的缓存更新方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910297265.5A CN110119487B (zh) 2019-04-15 2019-04-15 一种适用于发散数据的缓存更新方法

Publications (2)

Publication Number Publication Date
CN110119487A CN110119487A (zh) 2019-08-13
CN110119487B true CN110119487B (zh) 2021-07-16

Family

ID=67520957

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910297265.5A Expired - Fee Related CN110119487B (zh) 2019-04-15 2019-04-15 一种适用于发散数据的缓存更新方法

Country Status (1)

Country Link
CN (1) CN110119487B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111240593B (zh) * 2020-01-06 2023-01-10 苏州浪潮智能科技有限公司 一种动态自适应调度的数据迁移方法、装置、设备和介质
CN111736769B (zh) * 2020-06-05 2022-07-26 苏州浪潮智能科技有限公司 一种稀释缓存空间的方法、设备以及介质
CN112632347B (zh) * 2021-01-14 2024-01-23 加和(北京)信息科技有限公司 数据筛选控制方法及装置、非易失性存储介质
CN112784120B (zh) * 2021-01-25 2023-02-21 浪潮云信息技术股份公司 一种基于范围分片方式的kv内存数据库存储管理方法
CN113254465B (zh) * 2021-05-25 2022-11-01 四川虹魔方网络科技有限公司 缓存最终一致性更新方法
CN113791989B (zh) * 2021-09-15 2023-07-14 深圳市中科蓝讯科技股份有限公司 基于cache的缓存数据处理方法、存储介质及芯片

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006238A (zh) * 2010-12-14 2011-04-06 武汉大学 一种无结构p2p网络中的均衡快速搜索方法
CN102170634A (zh) * 2011-04-18 2011-08-31 搜船(北京)网络技术有限公司 一种移动终端位置数据缓存与实时更新系统和方法
CN106897030A (zh) * 2017-02-28 2017-06-27 郑州云海信息技术有限公司 一种缓存数据管理方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8037110B2 (en) * 2007-12-27 2011-10-11 Microsoft Corporation Business data access client for online/offline client use

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006238A (zh) * 2010-12-14 2011-04-06 武汉大学 一种无结构p2p网络中的均衡快速搜索方法
CN102170634A (zh) * 2011-04-18 2011-08-31 搜船(北京)网络技术有限公司 一种移动终端位置数据缓存与实时更新系统和方法
CN106897030A (zh) * 2017-02-28 2017-06-27 郑州云海信息技术有限公司 一种缓存数据管理方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Estimation of DNS Source and Cache Dynamics under Interval-Censored Age Sampling;Di Xiao等;《IEEE》;20181231;第1358-1366页 *
基于流行内容感知和跟踪的协同缓存策略;张果等;《通信学报》;20170228;第38卷(第2期);第132-142页 *

Also Published As

Publication number Publication date
CN110119487A (zh) 2019-08-13

Similar Documents

Publication Publication Date Title
CN110119487B (zh) 一种适用于发散数据的缓存更新方法
US6385699B1 (en) Managing an object store based on object replacement penalties and reference probabilities
US6266742B1 (en) Algorithm for cache replacement
EP1654660B1 (en) A method of data caching
US5043885A (en) Data cache using dynamic frequency based replacement and boundary criteria
JP2558033B2 (ja) データキャッシュメモリ内のデータを置換する方法
EP3229142B1 (en) Read cache management method and device based on solid state drive
CN109359095B (zh) 一种大数据快速读取的dlk方法
CN111159066A (zh) 一种动态调整的缓存数据管理及淘汰方法
US20090094200A1 (en) Method for Admission-controlled Caching
WO2011031689A1 (en) Caching data between a database server and a storage system
US8572130B2 (en) Replacement policy for resource container
US10007615B1 (en) Methods and apparatus for performing fast caching
US20050283573A1 (en) System and method for an optimized least recently used lookup cache
US7284093B2 (en) Self-tuning cache
CN112860185B (zh) 基于lru算法的高可用缓存方法、存储装置以及电子设备
US11593268B2 (en) Method, electronic device and computer program product for managing cache
US8250302B2 (en) Cache management using sampled values assigned to a request
CN109002400B (zh) 一种内容感知型计算机缓存管理系统及方法
CN116204130A (zh) 一种键值存储系统和键值存储系统的管理方法
CN115562592A (zh) 一种基于云对象存储的内存和磁盘混合缓存方法
US9129033B1 (en) Caching efficiency using a metadata cache
JP2017162194A (ja) データ管理プログラム、データ管理装置、及びデータ管理方法
US7836248B2 (en) Methods and systems for managing persistent storage of small data objects
CN107577618A (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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20210716

CF01 Termination of patent right due to non-payment of annual fee