[发明专利]一种数据库优化存储数据的方法在审
申请号: | 202111472678.6 | 申请日: | 2021-12-06 |
公开(公告)号: | CN114048192A | 公开(公告)日: | 2022-02-15 |
发明(设计)人: | 贾德星 | 申请(专利权)人: | 浪潮云信息技术股份公司 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F16/22;G06F16/2453;G06F16/2455 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 孙晶伟 |
地址: | 250100 山东省济南市高*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 优化 存储 数据 方法 | ||
本发明公开一种数据库优化存储数据的方法,涉及数据库存储技术领域;根据数据库表写入数据,利用数据行KV存储编码模型存储变更的数据列值,其中通过数据行KV存储编码模型的主键列值KEY记录完整数据行,通过数据行KV存储编码模型的其他列值VALUE仅记录数据行的部分变更列字段值;根据数据库表查询及合并数据行的KV数据,利用数据行KV存储编码模型读取数据行的主键列值KEY,获取行数据KEY和时间戳,根据行数据KEY和时间戳进行排序获得最新部分变更列字段值的相同行数据KEY的KV数据,合并所述相同行数据KEY的KV数据。
技术领域
本发明公开一种方法,涉及数据库存储技术领域,具体地说是一种数据库优化存储数据的方法。
背景技术
关系数据库以行列二维表模型来组织数据,在存储时往往以行为单位写入底层存储系统。而目前业界主流的分布式数据库如CockroachDB、TiDB等,在存储数据行时都采用Key-Value(键值)存储格式,数据库引擎把数据库表的一行数据编码为一条KV数据存储到底层存储引擎中如RocksDB,其中Key是表主键列的值,其他列的值则编码为Value。在数据更新时,即使只修改其中一个列字段的值,也需要把旧的数据行全部读取出来,并在修改某个列字段值后再次编码为KV数据进行存储。而这种方式增加了多余的存储读取IO,也增加存储写入IO的使用量,同时也增加了数据的写入放大,影响系统整体性能。
发明内容
本发明针对现有技术的问题,提供一种数据库优化存储数据的方法,本发明提出的具体方案是:
一种数据库优化存储数据的方法,根据数据库表写入数据,利用数据行KV存储编码模型存储变更的数据列值,其中通过数据行KV存储编码模型的主键列值KEY记录完整数据行,通过数据行KV存储编码模型的其他列值VALUE仅记录数据行的部分变更列字段值;
根据数据库表查询及合并数据行的KV数据,利用数据行KV存储编码模型读取数据行的主键列值KEY,获取行数据KEY和时间戳,根据行数据KEY和时间戳进行排序获得最新部分变更列字段值的相同行数据KEY的KV数据,合并所述相同行数据KEY的KV数据。
进一步,权利要求1所述的一种数据库优化存储数据的方法中所述通过数据行KV存储编码模型的主键列值KEY记录完整数据行,包括:
当数据库表插入一行新数据时,按照数据行KV存储编码模型将主键列值编码为KEY,其他列值编码为VALUE,时间戳记录为当前时间,设置全量数据标识=1,表示当前KV数据是一条完整的数据行。
进一步,权利要求1所述的一种数据库优化存储数据的方法中所述通过数据行KV存储编码模型的其他列值VALUE仅记录数据行的部分变更列字段值,包括:
当数据库表的一行数据部分列字段值改变时,仅将修改的列字段值编码到VALUE,设置全量数据标识=0,表示当前KV数据只包含部分列字段值。
进一步,权利要求1所述的一种数据库优化存储数据的方法中所述根据行数据KEY和时间戳进行排序获得相同行数据KEY的KV数据,包括:
按照行数据KEY的二进制编码字节大小进行从小到大的正向排序,并按照时间戳从大到小进行逆向排序,读取到最新部分变更列字段值的相同行数据KEY的KV数据。
进一步,权利要求1所述的一种数据库优化存储数据的方法中所述合并所述相同行数据KEY的KV数据,包括:
根据合并规则进行所述相同行数据KEY的KV数据的合并,所述合并规则包括:
从全量数据标识=0的KV数据开始,遍历相同行数据KEY的KV数据,直到读取到全量数据标识=1的KV数据,将遍历到的KV数据进行合并,其中KEY的时间戳=最新KEY的时间戳,VALUE中的字段列值进行合并,每个字段列取最新时间戳的值。
一种数据库优化存储数据的系统,包括数据行KV存储编码模型模块,
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮云信息技术股份公司,未经浪潮云信息技术股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111472678.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种环保型功能性复合服装面料的抗菌工艺
- 下一篇:一种临时支护抗洪堤坝
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置