[发明专利]数据缓存方法、装置、电子设备及存储介质有效
申请号: | 201911158097.8 | 申请日: | 2019-11-22 |
公开(公告)号: | CN110990302B | 公开(公告)日: | 2021-11-02 |
发明(设计)人: | 高华龙 | 申请(专利权)人: | 北京云宽志业网络技术有限公司 |
主分类号: | G06F12/123 | 分类号: | G06F12/123 |
代理公司: | 北京市铸成律师事务所 11313 | 代理人: | 阎敏;杨瑾瑾 |
地址: | 100195 北京市海淀区东冉*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 缓存 方法 装置 电子设备 存储 介质 | ||
本申请提出一种数据缓存方法、装置、电子设备及存储介质。具体实现方案为:将缓存中的待执行刷新操作的逻辑缓存卷插入到刷新任务队列中;将刷新任务队列的队首元素取出,并将队首元素作为当前缓存卷;确定当前缓存卷的状态;在当前缓存卷的状态是已写满状态的情况下,在刷新任务队列中选择当前缓存卷作为执行刷新操作的逻辑缓存卷。本申请实施例中,将已写满状态的当前缓存卷作为执行刷新操作的逻辑缓存卷,利用连续大块的顺序存储的数据读写吞吐量大于零散的小块数据读写量的特性,从而充分利用数据的访问的连续性,提高了缓存的刷新效率和系统的数据吞吐量,进而提高缓存的命中率。
技术领域
本申请涉及信息技术领域,尤其涉及一种数据缓存方法、装置、电子设备及存储介质。
背景技术
缓存(Cache)是数据交换的缓冲区。例如应用程序要读取数据时,会首先从缓存查询数据。若从缓存中查询到数据,则表示已经命中缓存,数据被读取并返回给应用程序。如果在缓存中没有查询到数据,则未命中缓存。应用程序必须做一些额外的工作,例如需要从下层存储设备来读取数据,将数据返回给客户端。传统的缓存算法在缓存未命中的情况下,性能退化比较严重,例如存在缓存的刷新效率低从而导致命中率低的问题。
发明内容
本申请实施例提供一种数据缓存方法、装置、电子设备及存储介质,以解决相关技术存在的问题,技术方案如下:
第一方面,本申请实施例提供了一种数据缓存方法,包括:
将缓存中的待执行刷新操作的逻辑缓存卷插入到刷新任务队列中;
将刷新任务队列的队首元素取出,并将队首元素作为当前缓存卷;
确定当前缓存卷的状态;
在当前缓存卷的状态是已写满状态的情况下,在刷新任务队列中选择当前缓存卷作为执行刷新操作的逻辑缓存卷。
在一种实施方式中,获取当前缓存卷的状态之后,上述方法还包括:
在所述当前缓存卷的状态是未写满状态的情况下,对当前缓存卷的跳过计数值进行累加操作;
在跳过计数值小于预设最大计数值的情况下,将当前缓存卷推入刷新任务队列的队尾;
在跳过计数值等于预设最大计数值的情况下,将当前缓存卷推入优先刷新队列,优先刷新队列用于记录待优先执行刷新操作的逻辑缓存卷。
在一种实施方式中,将刷新任务队列的队首元素取出之后,上述方法还包括:对预先设置的访问计数进行累加操作;
将刷新任务队列的队首元素取出之前,方法还包括:
在访问计数小于等于刷新任务队列的长度的情况下,转向执行将刷新任务队列的队首元素取出的步骤;
在访问计数大于刷新任务队列的长度的情况下,确定不对刷新任务队列中的逻辑缓存卷执行刷新操作。
在一种实施方式中,将刷新任务队列的队首元素取出之前,上述方法还包括:
在当前挂起的读写任务数小于预设最大挂起任务数的情况下,将刷新优先刷新队列中的逻辑缓存卷加入到当前挂起的读写任务中。
在一种实施方式中,将刷新任务队列的队首元素取出之前,上述方法还包括:
判断当前挂起的读写任务数是否大于预设最小挂起任务数;
在当前挂起的读写任务数大于预设最小挂起任务数的情况下,转向执行将刷新任务队列的队首元素取出的步骤,以在所述刷新任务队列中选择执行刷新操作的逻辑缓存卷;
在当前挂起的读写任务数小于等于预设最小挂起任务数的情况下,利用最近最少使用算法在刷新任务队列中选择执行刷新操作的逻辑缓存卷。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京云宽志业网络技术有限公司,未经北京云宽志业网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911158097.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电子温度计测温方法
- 下一篇:一种交联聚乙烯绝缘钢带铠装护套电力电缆
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置