[发明专利]一种数据缓存方法在审

专利信息
申请号: 201510701385.9 申请日: 2015-10-26
公开(公告)号: CN105243030A 公开(公告)日: 2016-01-13
发明(设计)人: 尧津来 申请(专利权)人: 北京锐安科技有限公司
主分类号: G06F12/0871 分类号: G06F12/0871
代理公司: 北京品源专利代理有限公司 11332 代理人: 胡彬;孟金喆
地址: 100044 北京市海淀区西小口*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 数据 缓存 方法
【说明书】:

技术领域

发明实施例涉及数据存储技术,尤其涉及一种数据缓存方法。

背景技术

现有的计算机,为了提高数据访问速度,需要把要访问的数据写入内存中,再进行访问。内存的空间有限,因此需要定期的清理过期数据,以提供足够的内存空间。

现有技术中的缓存方法为,当接收到要访问的数据时,首先与已有内存中存储的数据进行比较,若已存在该数据,则抛弃该数据,可直接访问内存中的已有数据,若否,则将该数据写入内存中。每隔一定时间扫描内存数据,将存储时间超过设定值的过期数据删除。上述缓存使用方案,可应用于各种场景,例如应用于流量分析统计,即需要访问的数据是流量,当内存中已存在该数据时,可以对该数据进行计次统计。

上述方案,由于需要将数据与所有内存的数据进行比较,因此效率较低,且由于定期清理内存,会使得内存突然减小,当要访问的数据量大时,内存又会突然增大,因此导致内存容易抖动。

发明内容

本发明实施例提供一种数据缓存方法,以提高缓存效率,且避免内存抖动。

本发明实施例提供了一种数据缓存方法,该数据缓存方法包括:

初始化内存,以建立第一链表、哈希表和第二链表,所述第一链表的节点用于存储内存中各存储单元的存储地址,所述哈希表的节点用于存储数据的哈希值,所述第二链表的节点用于按照数据的存储顺序存储对应存储单元的存储地址;

接收到访问数据时,计算所述数据的哈希值,与所述哈希表中的哈希值进行比对;

若不存在比对一致的哈希值,则从所述第一链表中获取空闲存储单元的存储地址,将所述数据存储至所述空闲存储单元中,且将该空闲存储单元的存储地址顺序存储至第二链表中,并将所述数据的哈希值存储至所述哈希表中;

若存在比对一致的哈希值,则停止所述访问数据向所述内存的写入操作。

进一步的,所述第二链表为单链表

进一步的,在从所述第一链表中获取空闲存储单元的存储地址之前,还包括:

判断所述第一链表中是否存在空闲存储单元的存储地址,若是,则执行存储操作,若否,则获取所述第二链表的头节点;

将所述头节点中的存储地址清空,将清空的存储地址对应存储数据的哈希值,从所述哈希表中删除;

将所述数据存储至清空的存储地址对应的存储单元中,且将所述数据的哈希值存储至所述哈希表中

将所述头节点后的下一个节点更新为所述第二链表的头节点。

进一步的,初始化内存,以建立第一链表、哈希表和第二链表包括:

根据待访问数据的流量和时间有效性设置所述第一链表、哈希表和第二链表的节点数量。

本发明通过设置第一链表和第二链表,以循环方式删除最早存储的数据,使得内存的大小不会出现突然的增加或减小,因此避免了内存抖动现象。在存储访问的数据时,仅比较数据的哈希值,而无需比较所有数据,可提高比对的效率和速度。

附图说明

图1是本发明实施例一中提供的数据缓存方法流程图;

图2是本发明实施例二中提供的数据缓存方法流程图;

图3是本发明结合实施例一和实施例二提供的数据缓存方法流程图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1是本发明实施例一中提供的数据缓存方法流程图,本实施例可适用于任意数据缓存的情况,该方法可以由配置于终端的数据处理装置来执行,具体包括如下步骤:

S110、初始化内存,以建立第一链表、哈希表和第二链表,所述第一链表的节点用于存储内存中各存储单元的存储地址,所述哈希表的节点用于存储数据的哈希值,所述第二链表的节点用于按照数据的存储顺序存储对应存储单元的存储地址;

其中,该第二链表节点中存储地址的储存顺序可以为读入时间顺序,最先读入的存入该第二链表的头节点,其他节点以此类推,将访问数据的存储地址保存在第二链表中,该存储方式方便内存中的数据根据存入时间的先后进行不断更新。该第二链表可以是双链表,优选是单链表通过头尾两个指针实现对链表内访问。

为提高缓存效率,初始化内存,以建立第一链表、哈希表和第二链表还可以包括:根据待访问数据的流量和时间有效性设置所述第一链表、哈希表和第二链表的节点数量。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京锐安科技有限公司,未经北京锐安科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510701385.9/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top