【技术实现步骤摘要】
缓存淘汰方法及系统
本申请涉及数据处理
,尤其涉及一种缓存淘汰方法、系统、电子装置及计算机可读存储介质。
技术介绍
缓存淘汰算法是一种为了充分利用缓存数据的淘汰算法。大部分操作系统为最大化页面命中率,广泛采用LRU(LeastRecentlyUsed,最近最少使用)淘汰算法。LRU淘汰算法维护一个队列,Insert(插入)操作会将数据放到队列头部,而淘汰则从队列尾部开始,并且Lookup(查询)操作得到的Key(数据资源的唯一ID号)也会做更新,将Key转移到队列头部。LRU-K淘汰算法中的中的K代表最近使用次数的阈值,是当该使用次数达到K次才进入LRU队列中的一种淘汰算法。当存在热点数据时,LRU淘汰算法的效率很好,但偶发性的、周期性的批量插入操作会导致命中率急剧下降。而LRU-K淘汰算法虽然可以很好的解决偶发性的、周期性的批量插入操作所带来的影响,但对K值的调整是繁琐的过程,若K值太小则效果与LRU淘汰算法相似,太大则适应性差,需要大量的数据访问才能将历史访问记录(访问频次的计数)淘汰掉。另外,由于LRU- ...
【技术保护点】
1.一种缓存淘汰方法,其特征在于,所述方法包括:/n设置第一队列和第二队列,其中,所述第一队列用于维护缓存数据及每个所述数据对应的编码,所述第二队列用于维护每个所述数据的所述编码和每秒查询率;/n接收所要查询的数据的所述编码;及/n根据所述编码向所述第一队列发起查询操作,并在未查询到所述编码时更新所述第一队列和所述第二队列,对所述第一队列中的冷数据进行淘汰。/n
【技术特征摘要】
1.一种缓存淘汰方法,其特征在于,所述方法包括:
设置第一队列和第二队列,其中,所述第一队列用于维护缓存数据及每个所述数据对应的编码,所述第二队列用于维护每个所述数据的所述编码和每秒查询率;
接收所要查询的数据的所述编码;及
根据所述编码向所述第一队列发起查询操作,并在未查询到所述编码时更新所述第一队列和所述第二队列,对所述第一队列中的冷数据进行淘汰。
2.根据权利要求1所述的缓存淘汰方法,其特征在于,所述更新所述第一队列和所述第二队列,对所述第一队列中的冷数据进行淘汰包括:
查看所述编码是否在所述第二队列中;
当所述编码不在所述第二队列中时,将所述编码插入所述第二队列,且将所述编码对应的当前每秒查询率CQPS和上一次每秒查询率PQPS均初始化为0。
3.根据权利要求2所述的缓存淘汰方法,其特征在于,所述更新所述第一队列和所述第二队列,对所述第一队列中的冷数据进行淘汰还包括:
当所述编码存在所述第二队列中时,将所述编码对应的所述PQPS赋值为已记录的所述CQPS的值,并重新计算新的所述CQPS的值;
根据更新后的所述PQPS和所述CQPS的值判断是否将所述编码对应的所述数据保存到所述第一队列中。
4.根据权利要求3所述的缓存淘汰方法,其特征在于,所述根据更新后的所述PQPS和所述CQPS的值判断是否将所述编码对应的所述数据保存到所述第一队列中包括:
根据所述PQPS和所述CQPS的值以及预设的计算因子Factor计算所述编码的每秒查询率KQPS,其中KQPS=CQPS*Factor+PQPS*(1-Factor);
计算所有所述编码对应的每秒查询率总和TQPS;
比较所述KQPS与所述TQPS的比值是否大于预设的阈值;
当所述KQPS与所述TQPS的比值大于所述阈值时,将所述...
【专利技术属性】
技术研发人员:蔡尚志,王盛,
申请(专利权)人:上海哔哩哔哩科技有限公司,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。