[发明专利]一种数据存储方法及装置有效
申请号: | 201510385749.7 | 申请日: | 2015-06-30 |
公开(公告)号: | CN105095393B | 公开(公告)日: | 2018-11-16 |
发明(设计)人: | 傅磊 | 申请(专利权)人: | 努比亚技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 深圳协成知识产权代理事务所(普通合伙) 44458 | 代理人: | 章小燕 |
地址: | 518057 广东省深圳市南山区高新区北环大道9018*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 存储 方法 装置 | ||
本发明公开了一种数据存储方法,以分表的形式存储数据,所述方法还包括:检测当前分表所写入的数据量;判断所述当前分表所写入的数据量是否超出分表阈值;当所述当前分表所写入的数据量超出分表阈值时,生成新的分表,并将待写入的数据写入所述新的分表中。本发明还同时公开了一种数据存储装置。采用本发明的技术方案,解决了现有技术中当进行大数据量存储时数据库系统的持久化写入性能下降的问题,进而也提升了数据库系统的统计查询性能。
技术领域
本发明涉及数据库系统领域,尤其涉及一种数据存储方法及装置。
背景技术
随着大量移动终端用户进行空中固件升级(FOTA,Firmware Over The Air)升级,FOTA系统产生的数据也随之大量生产,并持久化存储到数据库(如MongoDB数据库)中,当数据库的单表写入的数据量达到千万级别时,持久化写入的性能急剧下降,从而严重影响FOTA系统在大用户量下的持续运行的稳定性,同时,查询相应升级数据耗时也随之急剧上升,严重影响升级数据的统计查询功能。
发明内容
有鉴于此,本发明的主要目的在于提供一种数据存储方法及装置,能解决现有技术中当进行大数据量存储时数据库系统的持久化写入性能下降的问题。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种数据存储方法,以分表的形式存储数据,所述方法还包括:
检测当前分表所写入的数据量;
判断所述当前分表所写入的数据量是否超出分表阈值;
当所述当前分表所写入的数据量超出分表阈值时,生成新的分表,并将待写入的数据写入所述新的分表中。
上述方案中,优选地,所述生成新的分表,包括:
生成新的分表的表名;
更新分表索引表中的关于所述当前分表的索引记录,并初步生成关于所述新的分表的索引记录;
其中,在分表索引表结构中,至少包含下述信息:
当前分表表名、开始写入时间、结束写入时间、当前分表数据量、前一分表表名、生成时间。
上述方案中,优选地,所述检测当前分表所写入的数据量之前,所述方法还包括:
进行初始化操作。
上述方案中,优选地,所述进行初始化操作,包括:
动态配置分表阈值;
查找是否存在分表索引表;
如果不存在,创建分表索引表;
如果存在,在分表索引表中查找是否有满足预设条件的索引记录;
当有满足预设条件的第一索引记录时,获取第一索引记录中的当前分表表名、开始写入时间、结束写入时间和前一分表表名,并分别设置到当前分表表名变量、当前分表开始写入时间变量、当前分表结束写入时间变量和前一分表表名变量中;查找是否有当前分表表名为前一分表表名的第二索引记录,如果有,获取第二索引记录的开始写入时间和结束写入时间,并设置到前一分表开始写入时间变量和前一分表结束写入时间变量中,触发写数据监测操作,如果没有,触发写数据监测操作;
当没有满足预设条件的第一索引记录时,生成新的分表的表名;查找是否有生成时间离当前时点最近的第三索引记录,如果有,获取第三索引记录中的开始写入时间和结束写入时间,并设置到前一分表开始写入时间变量和前一分表结束写入时间变量中,将所述当前分表表名设置为新生成的索引记录的前一分表表名,触发写数据监测操作;如果没有,触发写数据监测操作。
上述方案中,优选地,所述创建分表索引表,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于努比亚技术有限公司,未经努比亚技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510385749.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:构建词语网络及抽取关键词的方法和装置
- 下一篇:新词识别方法和装置
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置