一种实现倒排链快速归并的方法和装置的制造方法

文档序号:9471459阅读:336来源:国知局
一种实现倒排链快速归并的方法和装置的制造方法
【技术领域】
[0001]本发明涉及信息检索领域,更具体地,涉及一种实现快速倒排链归并的方法和装置。
【背景技术】
[0002]随着信息技术的飞速发展,人们越来越多的使用网络来查找各种信息,包括例如最新信息的发布、新技术的进展、专业性论文、社交网络发布或分享的诸如评论、日志、讨论之类的各种信息。例如,用户想通过网络查找某条新闻的详细内容,或者查找某项技术的介绍,或者想了解其他人对近期上映的某部电影的评论等,实现这些网络查询需求的重要工具是搜索引擎。
[0003]搜索引擎是指根据一定的策略、运用特定的技术手段自动从互联网上搜集信息,在对信息进行组织和处理后,将用户检索相关的信息展示给用户的系统。其中搜集的信息进行组织和处理非常重要,提取关键词、建立索引文件、按一定规则排序是重点,这将影响到搜索速度。
[0004]在搜索引擎技术中,倒排索引是常使用的一种数据结构,通过倒排索引可以根据关键词快速地获取到包含这个关键词的文档列表,生成搜索结果反馈给用户。
[0005]现有技术的方法存在一个问题,如果关键词的倒排链很长,例如,关键词“新闻”或“体育”等可能命中几百万或上千万个结果,则目前至少需要上百毫秒甚至几秒才能完成检索,这是因为整个检索时间与关键词命中的数据的数目成正比。

【发明内容】

[0006]本发明的目的在于提供一种实现倒排链快速归并的方法和装置,以改善上述的问题。
[0007]在本发明的实施例中提供了一种实现倒排链快速归并的方法,其包括:
[0008]预先建立倒排索引并记录该倒排索引中的各条倒排链的长度;
[0009]通过所述倒排索引查询到与至少一个关键词对应的多条倒排链;
[0010]按照长度从小到大的顺序对所述多条倒排链进行排序;
[0011]从长度最小的倒排链开始对所述排序后的多条倒排链进行顺序归并。
[0012]优选的,在建立倒排索引的过程中还包括建立分别包含检索单元和语义单元的多条倒排链。
[0013]优选的,所述检索单元为通过小粒度分词方法获得的关键词。
[0014]优选的,所述语义单元为通过大粒度分词方法获得的关键词。
[0015]优选的,在建立倒排索引的过程中,包括将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置。
[0016]优选的,所述文档的多维特征包括文档的点击量、文档质量和文档的作者。
[0017]优选的,所述关键词是通过采用多粒度分词方法对给定文本进行分词产生的。
[0018]优选的,采用插入排序法、冒泡排序法或者选择排序法来按照长度从小到大的顺序对所述多条倒排链进行排序。
[0019]优选的,在对所述排序后的多条倒排链进行顺序归并时采用截断方法来进行,具体过程是:召回预设数量的排在倒排链靠近链头位置的文档后提前结束归并。
[0020]在本发明的实施例中还提供了一种实现倒排链快速归并的装置,其包括:
[0021]倒排索引建立单元,用于预先建立倒排索引并记录该倒排索引中的各条倒排链的长度;
[0022]查询单元,用于通过倒排索引查询到与至少一个关键词对应的多条倒排链;
[0023]排序单元,用于按照长度从小到大的顺序对所述多条倒排链进行排序;
[0024]归并单元,用于从长度最小的倒排链开始对所述排序后的多条倒排链进行顺序归并。
[0025]优选的,所述倒排索引建立单元还用于建立分别包含检索单元和语义单元的多条倒排链。
[0026]优选的,所述检索单元为通过小粒度分词方法获得的关键词。
[0027]优选的,所述语义单元为通过大粒度分词方法获得的关键词。
[0028]优选的,所述实现倒排链快速归并的装置还包括:优先排序装置,用于将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置。
[0029]本发明实施例提供的技术方案的有益效果是:在海量数据中一个关键词的倒排链通常会很长,减少不必要的链表遍历是提高检索效率的关键,本发明所提供的实现倒排链快速归并的方法和装置因为优先对链短的倒排链进行归并,进行比较和遍历的次数少;另外在建立倒排索引过程中优先使用多粒度分词的方法建立分别包含检索单元和语义单元的多条倒排链,这样既可以提升搜索结果的召回率,又减少了需要归并的倒排链的数量和长度,减少了遍历的次数;另外在建立倒排索引的过程中还包括将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置,这样可以在召回预设数量的排在倒排链靠近链头位置的文档后提前结束归并。这些措施减少了查询所需的时间,提高了查询时的搜索效率和准确率,从而提高搜索引擎的整体性能。
【附图说明】
[0030]图1是本发明的实现倒排链快速归并的方法的流程图;
[0031]图2是本发明的实现倒排链快速归并的装置的结构示意图;
[0032]图3是本发明的实现倒排链快速归并的装置的一个优选实施例的结构示意图。
【具体实施方式】
[0033]下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0034]下面将结合本发明的附图和具体实施例,对本发明的技术方案进行清楚、完整地描述。
[0035]图1是本发明的实现倒排链快速归并的方法的流程图。如图1所示,本发明的实现倒排链快速归并的方法包括:
[0036]步骤SlOl:预先建立倒排索引并记录该倒排索引中的各条倒排链的长度。
[0037]索引是搜索技术的重要组成部分,通过构建结构简单、有效、高性能的索引,可以帮助用户快捷地获取所查询的信息。目前,搜索技术常采用倒排索引,倒排索引可以被看成一个链表数组,每个链表的表头包含关键词,其后续单元则包括所有包含这个关键词的文档标号以及一些其他信息。这些信息可以是文档中该词的频率,也可以是文档中该词的位置等信息。这样在检索时可以直接利用各个链表表头的关键词来查找包含这些关键词的文档,而无需对所有的文档逐个进行基于关键词的检索,有利于提高检索的效率。大多数搜索引擎公司基本都采用了倒排索引方法来实现信息的检索。常用的倒排索引创建方式包括二分法、字典树法和哈希法等。例如,二分法是将用于创建索引的词条按照一定的顺序排列,例如,按照字典顺序或者汉字内码顺序有序排列,并存储词条对应的数据,然后根据用户输入的搜索关键词,采用二分法从顺序排列中的词条中查找该搜索关键词对应的词条,再根据查询得到的词条获取相应的数据,将数据信息向用户显示输出。当然还可以采用其它公知的建立索引方法的方法,这里不再赘述。在建立倒排索引时,可以记录该倒排索引中的各条倒排链的长度大小。
[0038]另外,在建立倒排索引的过程中还包括建立分别包含检索单元和语义单元的多条倒排链。所述检索单元为通过小粒度分词方法获得的关键词。所述语义单元为通过大粒度分词方法获得的关键词。该语义单元可以包括至少2个检索单元。所述小粒度分词方法和大粒度分词方法可以采用本领域公知的方法,这里不再赘述。这种在建立倒排索引过程中优先使用多粒度分词的方法建立分别包含检索单元和语义单元的多条倒排链的好处是:既可以提升搜索结果的召回率,又减少了需要归并的倒排链的数量和长度,减少了遍历的次数。
[0039]另外,在建立倒排索引的过程中还包括将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1