【技术实现步骤摘要】
数据缓存的方法和装置
[0001]本专利技术涉及计算机
,尤其涉及一种数据缓存的方法和装置。
技术介绍
[0002]当今的计算机系统中,缓存扮演着非常重要的角色,小到CPU(中央处理器,central processing unit),大到互联网网站,我们都需要使用缓存来提升系统性能。不过,缓存都需要相对昂贵的硬件来实现,因此大小受到限制。所以,我们需要使用不同的策略来淘汰不经常使用的内容,取而代之一些更有可能被使用的内容,增加缓存的命中率,进而提升缓存的使用效果。
[0003]为了实现这个目标,提出了多种缓存访问和淘汰策略。例如:FIFO(First Input First Output),先进先出算法,判断被存储的时间,离目前最远的数据优先被淘汰;LRU(The Least Recently Used),最近最久未使用算法,判断最近被使用的时间,目前最远的数据优先被淘汰;LFU(Least Frequentl8 Used),最近最少使用算法,在一段时间内,数据被使用次数最少的,优先被淘汰;LRU-K,LRU ...
【技术保护点】
【技术特征摘要】
1.一种数据缓存的方法,其特征在于,包括:从缓存中查询数据,所述缓存包括多个具有不同优先级的缓存队列;若未查询到所述数据,则将所述数据保存到最低优先级的缓存队列的队尾节点;若缓存容量超过预设的下限阀值,则从所述最低优先级的缓存队列的队头节点取出头部数据,并计算所述头部数据的优先级;若所述头部数据的优先级小于所述最低优先级,则从所述缓存中删除所述头部数据。2.根据权利要求1所述的方法,其特征在于,在将所述数据保存到最低优先级的缓存队列的队尾之前,还包括:判断所述缓存容量是否达到预设的上限阀值;若达到,则直接将所述最低优先级的缓存队列的队头节点的头部数据删除。3.根据权利要求1所述的方法,其特征在于,若从所述缓存中查询到所述数据,则计算所述数据的优先级,并将所述数据移动至所述优先级的缓存队列的队尾节点。4.根据权利要求1-3中任一所述的方法,其特征在于,所述缓存中还保存数据的访问计数因子和最近访问时间;并且,数据的优先级是根据数据的访问计数因子确定的。5.根据权利要求4所述的方法,其特征在于,若未查询到所述数据,则将所述数据的访问计数因子和最近访问时间设置为默认初始值。6.根据权利要求4所述的方法,其特征在于,若从所述缓存中查询到所述数据,则计算所述数据的优先级包括:若从所述缓存中查询到所述数据,则根据缓存中保存的所述数据的访问计数因子和最近访问时间计算最新的访问计数因子;根据所述最新的访问计数因子确定所述数据的优先级。7.根据权利要求6所述的方法,其特征在于,若从所述缓存中查询到所述数据,则根据缓存中保存的所述数据的访问计数因子和最近访问时间计算最新的访问计数因子包括:若从所述缓存中查询到所述数据,则首先计算访问计数因子增加的概率P=1/(访问计数因子*ln访问计数因子+1),然后将所述访问计数因子增加的概率P与随机数R进行比较,若P大于R,则访问计数因子增1,其中,R∈[0,1);更新所述访问计数因子;然后根据当前系统时间与所述...
【专利技术属性】
技术研发人员:陶希,
申请(专利权)人:北京沃东天骏信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。