一种数据存储方法及装置的制造方法_4

文档序号:9375779阅读:来源:国知局
成首个分表的表名;
[0178]将所述首个分表的表名设置为首个索引记录的当前分表表名中,并触发所述监测单元41执行写数据监测操作。
[0179]这里,上述数据存储装置可设置于数据库系统,如FOTA系统中。
[0180]本领域技术人员应当理解,图4中所示的数据存储装置中的各处理单元的实现功能,可参照前述数据存储方法的相关描述而理解。本领域技术人员应当理解,图4所示的数据存储装置中各处理单元,可通过运行于处理器上的程序而实现,也可通过具体地逻辑电路而实现。
[0181]以上各实施例所述的数据存储装置中的监测单元41、判断单元42、处理单元43、初始化单元44、以及初始化单元44的配置子单元441、查找子单元442、第一初始化子单元443和第二初始化子单元444,在实际应用中均可由所述数据存储装置或所述数据存储装置所属系统中的中央处理器(CPU,Central Processing Unit)、数字信号处理器(DSP,Digital Signal Processor)或可编程门阵列(FPGA,Field Programmable Gate Array)等实现。
[0182]采用本发明所述数据存储装置,解决了现有技术中当进行大数据量存储时数据库系统的持久化写入性能下降的问题,进而也提升数据库系统的统计查询性能。具体地,保证了在存储海量数据时数据库持久化写入性能的平稳性,从而保障了数据库系统在大用户量下持续运行的稳定性。
[0183]需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
[0184]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0185]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如R0M/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
[0186]以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
【主权项】
1.一种数据存储方法,其特征在于,以分表的形式存储数据,所述方法还包括: 检测当前分表所写入的数据量; 判断所述当前分表所写入的数据量是否超出分表阈值; 当所述当前分表所写入的数据量超出分表阈值时,生成新的分表,并将待写入的数据写入所述新的分表中。2.根据权利要求1所述的方法,其特征在于,所述生成新的分表,包括: 生成新的分表的表名; 更新分表索引表中的关于所述当前分表的索引记录,并初步生成关于所述新的分表的索引记录; 其中,在分表索引表结构中,至少包含下述信息: 当前分表表名、开始写入时间、结束写入时间、当前分表数据量、前一分表表名、生成时间。3.根据权利要求1所述的方法,其特征在于,所述检测当前分表所写入的数据量之前,所述方法还包括: 进行初始化操作。4.根据权利要求3所述的方法,其特征在于,所述进行初始化操作,包括: 动态配置分表阈值; 查找是否存在分表索引表; 如果不存在,创建分表索引表; 如果存在,在分表索引表中查找是否有满足预设条件的索引记录; 当有满足预设条件的第一索引记录时,获取第一索引记录中的当前分表表名、开始写入时间、结束写入时间和前一分表表名,并分别设置到当前分表表名变量、当前分表开始写入时间变量、当前分表结束写入时间变量和前一分表表名变量中;查找是否有当前分表表名为前一分表表名的第二索引记录,如果有,获取第二索引记录的开始写入时间和结束写入时间,并设置到前一分表开始写入时间变量和前一分表结束写入时间变量中,触发写数据监测操作,如果没有,触发写数据监测操作; 当没有满足预设条件的第一索引记录时,生成新的分表的表名;查找是否有生成时间离当前时点最近的第三索引记录,如果有,获取第三索引记录中的开始写入时间和结束写入时间,并设置到前一分表开始写入时间变量和前一分表结束写入时间变量中,将所述当前分表表名设置为新生成的索引记录的前一分表表名,触发写数据监测操作;如果没有,触发写数据监测操作。5.根据权利要求4所述的方法,其特征在于,所述创建分表索引表,包括: 生成首个分表的表名; 将所述首个分表的表名设置为首个索引记录的当前分表表名中,触发写数据监测操作。6.一种数据存储装置,其特征在于,所述装置包括: 监测单元,用于检测当前分表所写入的数据量; 判断单元,用于判断所述当前分表所写入的数据量是否超出分表阈值; 处理单元,用于当所述当前分表所写入的数据量超出分表阈值时,生成新的分表,并将待写入的数据写入所述新的分表中。7.根据权利要求6所述的装置,其特征在于,所述处理单元,还用于: 生成新的分表的表名; 更新分表索引表中的关于所述当前分表的索引记录,并初步生成关于所述新的分表的索引记录; 其中,在分表索引表结构中,至少包含下述信息: 当前分表表名、开始写入时间、结束写入时间、当前分表数据量、前一分表表名、生成时间。8.根据权利要求6所述的装置,其特征在于,所述装置还包括: 初始化单元,用于进行初始化操作。9.根据权利要求8所述的装置,其特征在于,所述初始化单元,包括: 配置子单元,用于动态配置分表阈值; 查找子单元,用于查找是否存在分表索引表; 第一初始化子单元,用于当不存在分表索引表时,创建分表索引表; 第二初始化子单元,用于: 当存在分表索引表时,在分表索引表中查找是否有满足预设条件的索引记录; 当有满足预设条件的第一索引记录时,获取第一索引记录中的当前分表表名、开始写入时间、结束写入时间和前一分表表名,并分别设置到当前分表表名变量、当前分表开始写入时间变量、当前分表结束写入时间变量和前一分表表名变量中;查找是否有当前分表表名为前一分表表名的第二索引记录,如果有,获取第二索引记录的开始写入时间和结束写入时间,并设置到前一分表开始写入时间变量和前一分表结束写入时间变量中,触发所述监测单元执行写数据监测操作,如果没有,触发所述监测单元执行写数据监测操作; 当没有满足预设条件的第一索引记录时,生成新的分表的表名;查找是否有生成时间离当前时点最近的第三索引记录,如果有,获取第三索引记录中的开始写入时间和结束写入时间,并设置到前一分表开始写入时间变量和前一分表结束写入时间变量中,将所述当前分表表名设置为新生成的索引记录的前一分表表名,触发所述监测单元执行写数据监测操作;如果没有,触发所述监测单元执行写数据监测操作。10.根据权利要求9所述的装置,其特征在于,所述第一初始化子单元,还用于: 生成首个分表的表名; 将所述首个分表的表名设置为首个索引记录的当前分表表名中,并触发所述监测单元执行写数据监测操作。
【专利摘要】本发明公开了一种数据存储方法,以分表的形式存储数据,所述方法还包括:检测当前分表所写入的数据量;判断所述当前分表所写入的数据量是否超出分表阈值;当所述当前分表所写入的数据量超出分表阈值时,生成新的分表,并将待写入的数据写入所述新的分表中。本发明还同时公开了一种数据存储装置。采用本发明的技术方案,解决了现有技术中当进行大数据量存储时数据库系统的持久化写入性能下降的问题,进而也提升了数据库系统的统计查询性能。
【IPC分类】G06F17/30
【公开号】CN105095393
【申请号】CN201510385749
【发明人】傅磊
【申请人】努比亚技术有限公司
【公开日】2015年11月25日
【申请日】2015年6月30日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1