[发明专利]一种非关系型数据库数据更新方法和装置有效
申请号: | 201210187686.0 | 申请日: | 2012-06-08 |
公开(公告)号: | CN103473239A | 公开(公告)日: | 2013-12-25 |
发明(设计)人: | 钟艳春;刘锦标;江红英 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 上海波拓知识产权代理有限公司 31264 | 代理人: | 杨波 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 关系 数据库 数据 更新 方法 装置 | ||
1.一种非关系型数据库数据更新方法,其特征在于,包括:
接收更新指令,并记录所述更新指令中携带的更新数据,所述更新数据包括主键和对应的更新操作内容;
当预设的第一触发事件发生时,查找各更新数据中的主键所属的数据文件;
根据更新数据中的所述更新操作内容,将各更新数据与其对应的数据文件合并到新的数据文件中,并用所述新的数据文件替换合并前的数据文件。
2.如权利要求1所述的方法,其特征在于,预先建立两个用于记录所述更新数据的目录;
将接收到的更新指令中携带的更新数据记录到其中一个目录中;
每当所述第一触发事件发生时,进行目录切换,将后续接收到的更新指令中携带的更新数据记录到另一个目录中,并将之前使用的目录中记录的各更新数据与对应的数据文件合并到新的数据文件中;
将之前使用的目录中记录的各更新数据与对应的数据文件合并到新的数据文件中之后,删除之前使用的目录中的更新数据。
3.如权利要求1所述的方法,其特征在于,还包括:
当预设的第二触发事件发生时,判断相邻多个数据文件的存储容量之和是否超过预设存储容量阈值,如果没有超过,则将所述多个数据文件合并为一个数据文件。
4.、如权利要求3所述的方法,其特征在于,所述判断相邻多个数据文件的存储容量之和是否超过预设存储容量阈值,如果没有超过,则将所述多个数据文件合并为一个数据文件,具体为:
步骤A,根据数据文件中包含的主键的顺序对数据文件进行排序,将排序后的数据文件中的第一个数据文件作为基准文件;
步骤B,判断基准文件是否为排序后的数据文件中的最后一个数据文件;如果是,则结束流程;否则,确定基准文件与基准文件的下一个数据文件的存储空间之和,并执行步骤C;
步骤C,判断所述存储空间之和是否超过预设的空间阈值;如果是,则将所述基准文件的下一个数据文件作为基准文件,并转至步骤B;否则,将基准文件与基准文件的下一个数据文件合并,将合并后的数据文件作为基准文件,并转至步骤B。
5.如权利要求3所述的方法,其特征在于,所述预设的第二触发事件,具体为达到预设数据文件合并周期。
6.如权利要求1所述的方法,其特征在于,还包括:对应各数据文件建立索引文件,索引文件中记录其对应的数据文件中的各SSTable所存储的主键的范围;
当接收到查询指令时,确定所述查询指令中携带的主键所属的数据文件;
根据该数据文件对应的索引文件中记录的该数据文件中的各SSTable所存储的主键的范围,确定所述查询指令中携带的主键所属的SSTable;
在该主键所属的SSTable中查找该主键对应的值。
7.如权利要求1所述的方法,其特征在于,所述预设的第一触发事件,具体为达到预设更新数据合并周期。
8.如权利要求1所述的方法,其特征在于,还包括:
为所述新的数据文件分配新的文件编号;
删除被替换的数据文件,并释放该数据文件的文件编号。
9.一种非关系型数据库数据更新装置,其特征在于,包括:
记录模块,用于接收更新指令,并记录所述更新指令中携带的更新数据,所述更新数据包括主键和对应的更新操作内容;
查找模块,用于当预设的第一触发事件发生时,查找各更新数据中的主键所属的数据文件;
更新模块,用于根据更新数据中的所述更新操作内容,将各更新数据与其对应的数据文件合并到新的数据文件中,并用所述新的数据文件替换合并前的数据文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210187686.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种网页存证方法及系统
- 下一篇:键值分组方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置