[发明专利]一种面向海量规模KV缓存的数据生命周期管理方法在审
申请号: | 201910128202.7 | 申请日: | 2019-02-21 |
公开(公告)号: | CN109800246A | 公开(公告)日: | 2019-05-24 |
发明(设计)人: | 潘洪安 | 申请(专利权)人: | 北京阿可科技有限公司 |
主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F16/22;G06F16/2458 |
代理公司: | 北京科亿知识产权代理事务所(普通合伙) 11350 | 代理人: | 汤东凤 |
地址: | 100025 北京市朝阳区西大望路甲*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 缓存 数据生命周期 操作流程 过期 生命周期管理 更新数据 缓存数据 内存资源 删除数据 时间窗口 用户方 管理 存储 制定 | ||
本发明涉及一种面向海量规模KV缓存的数据生命周期管理方法,其特征在于:包括如下流程:1、KV缓存数据用户方指定过期时间;2、根据指定的过期时间,计算对应的时间窗口,执行操作流程,操作流程包括新增数据、删除数据和/或更新数据;3、对KV进行存储及生命周期管理,本发明制定了面向海量规模KV缓存的数据生命周期管理方法,在不影响KV缓存性能的情况下能节省珍贵的内存资源。
技术领域
本发明涉及计算机大数据领域,具体涉及面向海量规模KV缓存的数据生命周期管理方法。
背景技术
KV缓存数据库因其高性能的key-value访问模式在业界已经被广泛使用。比如redis、 memcached被使用于双十一高并发订单系统、新闻资讯推荐的用户画像系统等。由于KV缓存数据库是使用珍贵的内存资源作为存储介质,因此KV数据的生命周期需要被有效管理,目的是为了减少内存资源的浪费。
目前业界已有的KV缓存数据库,为了兼顾内存使用和服务性能,在数据生命周期管理上普遍采用lazy delete方式:即当KV数据达到了生命周期,数据不会删除,而是标记可被删除,当数据下一次被读取时,返回空并进行删除。在大规模KV缓存数据的情况下,lazy delete方式使得大量的过期数据依然占用了珍贵的内存资源,严重浪费了内存资源。
术语解释:
1.KV:key-value的缩写,通过key查询、更新、删除value。常用KV缓存如redis、memcached 等。
2.生命周期:key-value数据在数据库的存储时间,如果超过指定的时长,就不能被访问到。
发明内容
为了解决以上问题,在海量规模的KV缓存数据的场景下,本申请引入一种数据生命周期管理方法,即面向海量规模KV缓存的数据生命周期管理方法,节省内存资源。
本发明解决技术问题所使用的技术方案:
一种面向海量规模KV缓存的数据生命周期管理方法,包括如下流程:
1.KV缓存数据用户方指定过期时间;
2.根据指定的过期时间,计算对应的时间窗口,执行操作流程,操作流程包括新增数据、删除数据和/或更新数据;
3.对KV进行存储及生命周期管理。
其中,时间窗口为KV缓存数据用户方设定的过期时间,但KV缓存执行过期过程中,超过时间窗口,批量删除已经过期的数据。
时间窗口的计算过程为:
计算过期时间=当前系统时间(到秒)+用户指定的过期时间长度(秒),
计算过期时间到分钟,然后根据时间窗口大小获得计算过期时间所在的创建区间。
所述时间窗口可以根据实际情况动态调整,即用户是改变过期时间,内部会触发下面的执行流程。
时间窗口的逻辑结构采用拉链法。
所述新增数据步骤如下:
新增一条数据<k,v>,
a.写入<k,v>数据;
b.根据指定的过期时间,计算对应的时间窗口,并更新生命周期管理;
(1)如果时间窗口已经存在,则在该时间窗口对应的key列表插入该 k;
(2)如果时间窗口不存在,则在时间窗口列表合适的位置插入该时间窗口,保证有序,同时该时间窗口需要指向k;
所述删除数据步骤如下:
删除<k,v>数据,
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京阿可科技有限公司,未经北京阿可科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910128202.7/2.html,转载请声明来源钻瓜专利网。