[发明专利]基于键值数据库的数据存储方法、检索方法及相应的装置在审
申请号: | 202111258633.9 | 申请日: | 2021-10-27 |
公开(公告)号: | CN114090575A | 公开(公告)日: | 2022-02-25 |
发明(设计)人: | 罗京;潘松强 | 申请(专利权)人: | 北京搜狗科技发展有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/2458;G06F16/25 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 苏培华 |
地址: | 100084 北京市海淀区中关*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 键值 数据库 数据 存储 方法 检索 相应 装置 | ||
本发明实施例提供了一种基于键值数据库的数据存储方法、检索方法及相应的装置。其中,基于键值数据库的数据存储方法包括:获取待存储的键值对数据,键值对数据包括原始键和值;原始键为字符串类型;采用转换规则将字符串类型的原始键转换成相应的、指定字节长度的整数类型,得到键值对数据对应的索引键;将键值对数据的值存储到键值数据库的值存储区中,并记录值在值存储区中的偏移量和值的长度;根据索引键、偏移量和长度,生成与值对应的目录项,并将目录项存储到键值数据库的键存储区中;实现了将字符串类型的原始键转换成相应的、指定字节长度的整数类型的索引键,方便规整键值数据库的键存储区,进而可以减少键存储区的占用空间。
技术领域
本发明涉及数据管理技术领域,特别是涉及一种基于键值数据库的数据存储方法、一种基于键值数据库的检索方法、一种基于键值数据库的数据存储装置、一种基于键值数据库的检索装置、一种设备、一种可读存储介质以及一种计算机程序产品。
背景技术
键值数据库是一种非关系数据库,是使用键-值(Key-Value)形式组织数据的存储结构。其中,不同键-值元素的键都是唯一的。通过唯一的键来进行值的快速存储和检索。
现有技术中,不论键是什么类型,都直接在键值数据库中存储键-值元素的原始键。当键是字符串类型时,由于字符串类型的数据长度是不确定的,并且,一般字符串类型的数据长度都会超过8个字节,若直接使用原始的字符串类型键来存储,会存在占用存储空间大的问题;并且在后续检索已存储的数据的过程中,需要对字符串类型的键进行逐个字节比对,会导致检索效率低下。
发明内容
本发明实施例所要解决的技术问题是提供一种基于键值数据库的数据存储方法以减少键的存储空间;并提供一种基于键值数据库的检索方法,以提高检索效率。
相应的,本发明实施例还提供了一种基于键值数据库的数据存储装置、一种基于键值数据库的检索装置、一种设备、一种可读存储介质以及一种计算机程序产品,用以保证上述方法的实现及应用。
为了解决上述问题,本发明实施例公开了一种基于键值数据库的数据存储方法,包括:
获取待存储的键值对数据,所述键值对数据包括原始键和值;所述原始键为字符串类型;
采用转换规则将字符串类型的所述原始键转换成相应的、指定字节长度的整数类型,得到所述键值对数据对应的索引键;
将所述键值对数据的值存储到键值数据库的值存储区中,并记录所述值在所述值存储区中的偏移量和所述值的长度;
根据所述索引键、所述偏移量和所述长度,生成与所述值对应的目录项,并将所述目录项存储到所述键值数据库的键存储区中。
可选地,所述将所述目录项存储到所述键值数据库的键存储区中,还包括:
根据所述目录项中的索引键的数值大小,确定所述目录项在所述键存储区中的目标存储位置;
将所述目录项存储在所述键存储区中的所述目标存储位置。
可选地,所述方法还包括:
根据各个目录项中的索引键的数值大小对键存储区中的目录项进行排序。
可选地,所述采用转换规则将字符串类型的原始键转换成相应的、指定字节长度的整数类型,得到所述键值对数据对应的索引键,包括:
将所述原始键对应的字符串倒置,得到倒置键;
对所述原始键进行第一哈希运算得到第一指定字节长度的第一哈希值,以及,对所述倒置键进行第二哈希运算得到第二指定字节长度的第二哈希值;
根据所述第一哈希值和所述第二哈希值,生成所述键值对数据对应的索引键。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京搜狗科技发展有限公司,未经北京搜狗科技发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111258633.9/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置