[发明专利]一种基于多元切分的倒排索引检索方法有效
申请号: | 201611227295.1 | 申请日: | 2016-12-27 |
公开(公告)号: | CN108241713B | 公开(公告)日: | 2021-12-28 |
发明(设计)人: | 曾先进;魏世凯;王武韬;杨永盛;鲁煦 | 申请(专利权)人: | 南京烽火星空通信发展有限公司 |
主分类号: | G06F16/31 | 分类号: | G06F16/31;G06F16/36;G06F16/33 |
代理公司: | 常州佰业腾飞专利代理事务所(普通合伙) 32231 | 代理人: | 康潇 |
地址: | 210019 江苏省南*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 多元 切分 索引 检索 方法 | ||
本发明公开了一种基于多元切分的倒排索引检索方法,属于计算机技术领域,规避检索过程中的多分词距离运算,解决了多分词情况的检索速度慢的问题,省去了在倒排索引中对分词偏移的磁盘记录空间的占用。
技术领域
本发明属于计算机技术领域。
背景技术
在海量数据检索领域,要想获得较快的检索速度,通常采用倒排索引技术来实现。传统的倒排索引结构可以概括为:字典索引、字典、倒排表、分词偏移。在此基础上,倒排索引的检索过程可以大概描述为:
步骤F1:查找字典索引,确定分词在字典中的分段位置,如果找不到,查询结束;
步骤F2:查找字典,确定分词所在文章ID列表信息在倒排表中的位置,如果找不到,查询结束;
步骤F3:查找倒排表,获取分词所在文章ID列表,确定分词在文章中的偏移信息在分词偏移中的位置;
步骤F4:结合查询树、分词所在文章ID列表信息,计算出查询结果,如果没有,查询结束;
步骤F5:查找分词偏移,获取各个查询分词在结果文章中的偏移信息;
步骤F6:计算各个查询分词在结果中的偏移,过滤不符合偏移要求的结果;
从上面的检索过程可以看出,当检索过程执行到步骤F5时,已经可以获得查询结果了,后面的步骤F6和步骤F7只是对步骤F5获得的结果进行过滤。
这也就意味着,如果步骤F1到步骤F5过程中获得的查询结果足够准确,那么步骤F6到步骤F7的过程将可以省略,如此便可以有效的提高查询性能。
从整体查询性能角度出发,步骤F6需要读取每个结果中每个查询分词对应的偏移信息,这个过程将产生大量的磁盘随机读取,从而导致查询时间的增加。同样步骤F7需要计算每个结果中查询分词的偏移位置的合法性,这个过程也会消耗大量的CPU资源,从而增加查询时间。由此可见,在查询性能面前,步骤F6和步骤F7的优化是很有必要的。
发明内容
本发明的目的是提供一种基于多元切分的倒排索引检索方法,规避检索过程中的多分词距离运算,解决了多分词情况的检索速度慢的问题,省去了在倒排索引中对分词偏移的磁盘记录空间的占用。
为实现上述目的,本发明采用以下技术方案:
一种基于多元切分的倒排索引检索方法,包括如下步骤:
步骤1:建立索引系统,索引系统包括Hadoop云存储平台、索引客户端和文本客户端,索引客户端和文本客户端均通过互联网与Hadoop云存储平台连接;
步骤2:用户通过文本客户端上传数个文本数据,文本客户端将所有文本数据均通过互联网传送给Hadoop云存储平台,Hadoop云存储平台的MapReduce对每一个文本数据均设定一个数据ID,并将所有文本数据均存储到Hadoop云存储平台的HDFS中;
步骤3:MapReduce对任意一个文本数据执行清洗任务,并生成清洗后文本数据,清洗任务包括对该文本数据中的大写字母转换成小写字母和对该文本数据中的全角转换半角;
步骤4:MapReduce对清洗后文本数据执行多元分词,其步骤如下:
步骤A:设定分词的最小单位为一个词元,设定词元的个数最大为N,N为正整数,MapReduce创建词元序列,以便对所有词元进行排序;
步骤B:MapReduce尝试从文本中读取一个词元:如能读取,则将读取的词元加入词元序列,执行步骤C;如不能读取,则执行步骤D;
步骤C:判断词元序列中的词元个数是否等于N:是,则执行步骤D;否,则执行步骤B;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京烽火星空通信发展有限公司,未经南京烽火星空通信发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611227295.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种地图数据处理方法和装置
- 下一篇:一种分布式数据库主键生成方法及装置