[发明专利]稀疏索引的建立方法和装置、稀疏索引及查询方法和装置在审
申请号: | 201110347637.4 | 申请日: | 2011-11-07 |
公开(公告)号: | CN103092885A | 公开(公告)日: | 2013-05-08 |
发明(设计)人: | 周大;钱岭;郭磊涛;齐骥 | 申请(专利权)人: | 中国移动通信集团公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 谢安昆;宋志强 |
地址: | 100032 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 稀疏 索引 建立 方法 装置 查询 | ||
技术领域
本发明涉及数据处理技术,特别涉及一种稀疏索引的建立方法和装置、一种稀疏索引,以及一种基于该稀疏索引的查询方法和装置。
背景技术
当进行数据加载时,为便于后续查询,通常会为数据记录建立索引,所述索引可以为稠密索引或稀疏索引等。
其中,稠密索引需要为每个数据记录分别建立一个索引项,而稀疏索引则只需要为每个分组分别建立一个索引项,每个分组中分别包括若干个数据记录。
现有技术中,通常按照以下方式来建立稀疏索引:按照某种规则,比如键值从小到大的顺序对各待处理的数据记录,即各待加载的数据记录进行排序;将排序后的数据记录进行切分,得到若干个分组;针对每个分组,分别建立一个索引项,每个索引项中均包括一个键值和一个指针,键值通常是指分组中的第一个数据记录的键值,指针指向的是分组中的第一个数据记录的起始位置。
图1为按照现有方式建立的稀疏索引的示意图。如图1所示,010101、020101等即为键值,粗箭头所指的一行即为一个数据记录,前3个数据记录作为一个分组,后4个数据记录作为一个分组。
但是,上述方式在实际应用中会存在一定的问题,即:由于需要先对各数据记录进行排序,然后才能进行后续处理,而排序的过程实现起来非常复杂,因此会导致稀疏索引的建立速度很慢。
发明内容
有鉴于此,本发明提供了一种稀疏索引的建立方法和装置,能够加快稀疏索引的建立速度。
本发明同时提供了一种稀疏索引以及基于该稀疏索引的查询方法和装置。
为达到上述目的,本发明的技术方案是这样实现的:
一种稀疏索引的建立方法,包括:
针对每个待处理的数据记录,分别利用同一散列函数计算其键值的散列值,并根据计算出的散列值将该数据记录保存到对应的分区中,保存到同一分区中的数据记录具有相同的散列值;
对于任一分区,初始阶段,其中的内容为空,当所保存的数据记录达到预定要求时,利用所保存的数据记录组成一个文件块,当所保存的未组成文件块的数据记录再次达到预定要求时,利用未组成文件块的数据记录组成另一个文件块,依次类推;每组成一个文件块,则为该文件块建立一个索引项。
一种稀疏索引的建立装置,包括:
计算模块,用于针对每个待处理的数据记录,分别利用同一散列函数计算其键值的散列值,并将该数据记录及计算出的散列值发送给建立模块;
所述建立模块,用于根据接收到的散列值将接收到的数据记录保存到对应的分区中,保存到同一分区中的数据记录具有相同的散列值;对于任一分区,初始阶段,其中的内容为空,当所保存的数据记录达到预定要求时,利用所保存的数据记录组成一个文件块,当所保存的未组成文件块的数据记录再次达到预定要求时,利用未组成文件块的数据记录组成另一个文件块,依次类推;每组成一个文件块,则为该文件块建立一个索引项。
一种稀疏索引,包括:
每个分区中的每个文件块分别对应一个索引项;每个分区分别具有一个不同于其它分区的编号,每个文件块分别具有一个不同于同一分区中的其它文件块的编号;
每个索引项中分别包括:最大键值、最小键值、分区号、文件块号和散列函数名;其中,
最大键值是指该索引项对应的文件块中的各数据记录的键值中的最大值;
最小键值是指该索引项对应的文件块中的各数据记录的键值中的最小值;
分区号是指该索引项对应的文件块所属的分区的编号;
文件块号是指该索引项对应的文件块的编号。
一种基于上述稀疏索引的查询方法,包括:
接收待查询键值,并从各索引项中查找出最小键值小于或等于待查询键值且最大键值大于或等于待查询键值的索引项,将查找出的索引项作为候选索引项;
针对每个候选索引项,分别利用其中的散列函数名对应的散列函数计算待查询键值的散列值以及该候选索引项中的最小键值或最大键值的散列值,如果待查询键值的散列值等于该候选索引项中的最小键值或最大键值的散列值,则将该候选索引项作为结果索引项;
遍历各结果索引项对应的文件块中的各数据记录,得到待查询键值对应的数据记录。
一种基于上述稀疏索引的查询装置,包括:
接收模块,用于接收待查询键值,并发送给处理模块;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国移动通信集团公司,未经中国移动通信集团公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110347637.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种外墙腻子粉及其制备方法
- 下一篇:由PC/ABS制成的抗菌性办公用品