[发明专利]数据查询方法、装置和存储介质有效
申请号: | 201711395378.6 | 申请日: | 2017-12-21 |
公开(公告)号: | CN108255958B | 公开(公告)日: | 2022-05-03 |
发明(设计)人: | 吴怀玉 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/172 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 杨泽;刘芳 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据 查询 方法 装置 存储 介质 | ||
本发明提供一种数据查询方法、装置和存储介质,该方法包括:接收数据查询指令,数据查询指令中包括待查询数据的标识值;在第一索引中查找标识值所在的标识值区间以及标识值区间在第二索引中的存储地址;其中,第一索引中对应多个标识值区间以及每个标识值区间在第二索引中的存储地址;第一索引存储在内存中;根据标识值区间在第二索引中的存储地址,查找标识值对应的数据在数据文件中的存储地址;第二索引中包括各标识值区间内的每个标识值对应的数据在数据文件中的存储地址,数据文件中包括每个标识值对应的数据;第二索引和数据文件存储在磁盘中;从标识值对应的数据在数据文件中的存储地址查询待查询数据。本发明能够提高磁盘的利用率。
技术领域
本发明涉及数据处理技术,尤其涉及一种数据查询方法、装置和存储介质。
背景技术
随着互联网的蓬勃发展,在移动终端、电脑或MP3等数据存储设备上均存储有大量数据。在对这些数据进行数据分析的过程中,常常要使用到数据查询技术。
现有技术中,通常是利用可读可写的key-value存储引擎来提供数据查询服务。其中,一种典型的可读可写的key-value存储引擎为树形索引。树形索引中,通常为了控制访问磁盘的次数,会将key值存储在内存中,将value值存储在磁盘中,这样,只需要访问一次磁盘即可查询到想要查询的value值。
然而,现有技术中,当value值很小时,value值在磁盘中将占用很小的存储空间,但是key值将会占用内存中的很大一部分空间,从而导致内存占用空间大,而磁盘的利用率不高。
发明内容
为解决现有技术中存在的问题,本发明提供一种数据查询方法、装置和存储介质,以降低索引占用的内存,并提高磁盘的利用率。
第一方面,本发明实施例提供一种数据查询方法,包括:
接收数据查询指令,所述数据查询指令中包括待查询数据的标识值;
在第一索引中查找所述标识值所在的标识值区间以及所述标识值区间在第二索引中的存储地址;其中,所述第一索引中对应多个标识值区间以及每个所述标识值区间在所述第二索引中的存储地址;所述第一索引存储在内存中;
根据所述标识值区间在所述第二索引中的存储地址,查找所述标识值对应的数据在数据文件中的存储地址;所述第二索引中包括各所述标识值区间内的每个标识值对应的数据在所述数据文件中的存储地址,所述数据文件中包括每个所述标识值对应的数据;所述第二索引和所述数据文件存储在磁盘中;
从所述标识值对应的数据在所述数据文件中的存储地址查询所述待查询数据。
在本方案中,由于将第一索引存储在内存中,将第二索引和数据文件存储在磁盘中,这样不仅可以减小标识值占用内存的空间,提高磁盘的利用率,而且可以使得查询服务器最多只访问两次磁盘,使得最坏情况下的访问时延可控。
可选地,所述第二索引对应多个数据块,且每个所述数据块用于存储一个所述标识值区间内的所有标识值对应的数据在所述数据文件中的存储地址信息。
在本方案中,通过将第二索引组织成多个数据块,且每个数据块用于存储一个标识值区间内的所有标识值对应的数据在数据文件中的存储地址信息,因此在第二索引中进行数据查找时,将会在数据块内进行查找,这样可以利用中央处理器(Central ProcessingUnit;CPU)的多级缓存,由此可以提高数据的查询速率。
可选地,所述第一索引中包括:每个所述标识值区间的起始标识值在所述第二索引中的存储地址。
可选地,每个所述标识值对应的数据在所述数据文件中的存储地址中还包括所述标识值对应的数据的长度信息。
可选地,所述从所述标识值对应的数据在所述数据文件中的存储地址查询所述待查询数据,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711395378.6/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置