一种增量生成方法、装置以及一种数据更新方法、装置制造方法及图纸

技术编号:21913906 阅读:68 留言:0更新日期:2019-08-21 12:24
本发明专利技术公开了一种增量生成方法、装置以及一种数据更新方法、装置,涉及计算机技术领域。所述方法,包括:监控是否接收到外部系统对键值数据库的更改操作;如果接收到所述更改操作,则将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中。解决了现有的增量记录方法无法在具备key‑value存储形式的优势条件下记录增量,取得了在具备key‑value存储形式的优势条件下记录增量,避免占用内存较多,容易影响系统的有益效果。

An Incremental Generation Method, Device and a Data Updating Method and Device

【技术实现步骤摘要】
一种增量生成方法、装置以及一种数据更新方法、装置
本专利技术涉及计算机
,具体涉及一种增量生成方法、装置以及一种数据更新方法、装置。
技术介绍
随着互联网web2.0(第二代互联网)网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS(SocialNetworkingServices,社交网络服务)类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL(NoSQL=NotOnlySQL)数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。键值数据库即是一种NoSQL数据库。在键值数据库中,是采用key-value对的形式进行数据存储,而且key-value存储一般都是根据key获取value,保存的时候只要把key-value保存起来就行了。在NoSQL数据库中,数据在不断地更新,可实时获取最新的客户的所有的数据。但是却无法获取数据的实时变化量,即增量。而且,如果利用表格的方式记录增量,那么则需要针对同一数据同时建立两张表,一张用以记录数据,一张用以记录数据的增量,那么此时不具备key-value存储形式的优势,而且会导致占用内存较多,容易影响系统运行效率。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的一种增量生成方法、装置以及一种数据更新方法、装置。依据本专利技术的一个方面,提供了一种增量生成方法,包括:监控是否接收到外部系统对键值数据库的更改操作;如果接收到所述更改操作,则将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中。可选地,所述监控是否接收到外部系统对键值数据库的更改操作的步骤之前,还包括:在键值数据库中创建所述特殊key-特殊value对。可选地,所述将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中的步骤,包括:当所述更改操作为新增操作、或修改操作时,将所述新增操作、或修改操作对应的原始key和相应的原始value,写入所述特殊key对应的特殊value中;当所述更改操作为删除操作时,将所述删除操作对应的原始key创建为空值的原始value,并将所述原始key和所述原始value写入所述特殊key对应的特殊value中。可选地,所述将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中的步骤,包括:对于同一个原始key,按相应的原始key和原始value的写入顺序加上版本编号。可选地,所述将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中的步骤,包括:判断所述特殊value中是否有所述原始key的记录;如有所述特殊value中有所述原始key的记录,则将当前的更改操作对应的原始key的原始value的值合并到之前的原始key的原始value中,并对所述值按照预设规则加上版本编号。根据本专利技术的另一方面,提供了一种数据更新方法,其特征在于,包括:接收外部系统的数据更新请求;从特殊key的特殊value中,读取原始key和相应的原始value返回所述外部系统,以供所述外部系统进行更新;所述特殊key的特殊value中记录了对键值数据库的更改操作所对应的原始key和相应的原始value。可选地,在接收外部系统的数据更新请求的步骤之前,还包括:监控是否接收到外部系统对键值数据库的更改操作;如果接收到所述更改操作,则将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中。可选地,所述监控是否接收到外部系统对键值数据库的更改操作的步骤之前,还包括:在键值数据库中创建所述特殊key-特殊value对。可选地,所述将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中的步骤,包括:当所述更改操作为新增操作、或修改操作时,将所述新增操作、或修改操作对应的原始key和相应的原始value,写入所述特殊key对应的特殊value中;当所述更改操作为删除操作时,将所述删除操作对应的原始key创建为空值的原始value,并将所述原始key和所述原始value写入所述特殊key对应的特殊value中。可选地,所述将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中的步骤,包括:对于同一个原始key,按相应的原始key和原始value的写入顺序加上版本编号。可选地,所述将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中的步骤,包括:判断所述特殊value中是否有所述原始key的记录;如有所述特殊value中有所述原始key的记录,则将当前的更改操作对应的原始key的原始value的值合并到之前的原始key的原始value中,并对所述值按照预设规则加上版本编号。可选地,当所述数据更新请求中包括所述外部系统的当前版本编号时,所述从特殊key的特殊value中,读取原始key和相应的原始value返回所述外部系统,以供所述外部系统进行更新的步骤,包括:查找版本编号在所述当前版本编号之后的原始key和原始value;将所述当前版本编号之后的原始key和原始value返回给所述外部系统,以供所述外部系统按版本编号顺序进行更新。可选地,当所述数据更新请求中包括所述外部系统的当前版本编号时,所述从特殊key的特殊value中,读取原始key和相应的原始value返回所述外部系统,以供所述外部系统进行更新的步骤,包括:在所述特殊value中,查找版本编号在所述当前版本编号之后的值;将所述原始key和包括了当前版本编号之后的值的原始value返回给所述外部系统,以供所述外部系统按版本编号顺序进行更新。根据本专利技术的另一方面,提供了一种增量生成装置,包括:更改操作监控模块,用于监控是否接收到外部系统对键值数据库的更改操作;更改操作记录模块,用于如果接收到所述更改操作,则将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中。可选地,在所述更改操作监控模块之前,还包括:特殊key-value创建模块,用于在键值数据库中创建所述特殊key-特殊value对。可选地,所述更改操作记录模块,包括:第一更改操作记录子模块,用于当所述更改操作为新增操作、或修改操作时,将所述新增操作、或修改操作对应的原始key和相应的原始value,写入所述特殊key对应的特殊value中;第二更改操作记录子模块,用于当所述更改操作为删除操作时,将所述删除操作对应的原始key创建为空值的原始value,并将所述原始key和所述原始value写入所述特殊key对应的特殊value中。可选地,所述更改操作记录模块,还用于对于同一个原始key,按相应的原始key和原始value的写入顺序加上版本编号。可选地,所述更改操作记录模块,包括:原始key记录判断子模块,用于判断所述特殊valu本文档来自技高网...

【技术保护点】
1.一种增量生成方法,包括:监控是否接收到外部系统对键值数据库的更改操作;如果接收到所述更改操作,则将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中。

【技术特征摘要】
1.一种增量生成方法,包括:监控是否接收到外部系统对键值数据库的更改操作;如果接收到所述更改操作,则将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中。2.根据权利要求1所述的方法,其特征在于,所述监控是否接收到外部系统对键值数据库的更改操作的步骤之前,还包括:在键值数据库中创建所述特殊key-特殊value对。3.根据权利要求1所述的方法,其特征在于,所述将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中的步骤,包括:当所述更改操作为新增操作、或修改操作时,将所述新增操作、或修改操作对应的原始key和相应的原始value,写入所述特殊key对应的特殊value中;当所述更改操作为删除操作时,将所述删除操作对应的原始key创建为空值的原始value,并将所述原始key和所述原始value写入所述特殊key对应的特殊value中。4.根据权利要求1-3其中之一所述的方法,其特征在于,所述将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中的步骤,包括:对于同一个原始key,按相应的原始key和原始value的写入顺序加上版本编号。5.根据权利要求1-3其中之一所述的方法,其特征在于,所述将所述更改操作对应的原始key和相应的原始value记录到预设的特殊key对应的特殊value中的步骤,包括:判断所述特殊value中是否有所述原始key的记录;如有所述特殊value中有所述原始key的记录,则将当前的更改操作对应的...

【专利技术属性】
技术研发人员:陶涛
申请(专利权)人:北京奇虎科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1