CN105224624A - 一种实现倒排链快速归并的方法和装置 - Google Patents

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

Info

Publication number
CN105224624A
CN105224624A CN201510611489.0A CN201510611489A CN105224624A CN 105224624 A CN105224624 A CN 105224624A CN 201510611489 A CN201510611489 A CN 201510611489A CN 105224624 A CN105224624 A CN 105224624A
Authority
CN
China
Prior art keywords
row chain
merger
document
many
inverted index
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201510611489.0A
Other languages
English (en)
Inventor
王刚
万明成
曾洪雷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Shenma Mobile Information Technology Co Ltd
Original Assignee
Guangzhou Shenma Mobile Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Shenma Mobile Information Technology Co Ltd filed Critical Guangzhou Shenma Mobile Information Technology Co Ltd
Priority to CN201510611489.0A priority Critical patent/CN105224624A/zh
Publication of CN105224624A publication Critical patent/CN105224624A/zh
Priority to US15/270,725 priority patent/US10452692B2/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/319Inverted lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/325Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种实现倒排链快速归并的方法和装置。所述方法包括:预先建立倒排索引并记录该倒排索引中的各条倒排链的长度;通过所述倒排索引查询到与至少一个关键词对应的多条倒排链;按照长度从小到大的顺序对所述多条倒排链进行排序;从长度最小的倒排链开始对所述排序后的多条倒排链进行顺序归并。本发明提供的技术方案的有益效果是:由于先归并长度小的倒排链,这减少了比较和遍历的次数,进而加快了归并速度,减少了查询所需的时间,提高了查询时的搜索效率和准确率,从而提高搜索引擎的整体性能。

Description

一种实现倒排链快速归并的方法和装置
技术领域
本发明涉及信息检索领域,更具体地,涉及一种实现快速倒排链归并的方法和装置。
背景技术
随着信息技术的飞速发展,人们越来越多的使用网络来查找各种信息,包括例如最新信息的发布、新技术的进展、专业性论文、社交网络发布或分享的诸如评论、日志、讨论之类的各种信息。例如,用户想通过网络查找某条新闻的详细内容,或者查找某项技术的介绍,或者想了解其他人对近期上映的某部电影的评论等,实现这些网络查询需求的重要工具是搜索引擎。
搜索引擎是指根据一定的策略、运用特定的技术手段自动从互联网上搜集信息,在对信息进行组织和处理后,将用户检索相关的信息展示给用户的系统。其中搜集的信息进行组织和处理非常重要,提取关键词、建立索引文件、按一定规则排序是重点,这将影响到搜索速度。
在搜索引擎技术中,倒排索引是常使用的一种数据结构,通过倒排索引可以根据关键词快速地获取到包含这个关键词的文档列表,生成搜索结果反馈给用户。
现有技术的方法存在一个问题,如果关键词的倒排链很长,例如,关键词“新闻”或“体育”等可能命中几百万或上千万个结果,则目前至少需要上百毫秒甚至几秒才能完成检索,这是因为整个检索时间与关键词命中的数据的数目成正比。
发明内容
本发明的目的在于提供一种实现倒排链快速归并的方法和装置,以改善上述的问题。
在本发明的实施例中提供了一种实现倒排链快速归并的方法,其包括:
预先建立倒排索引并记录该倒排索引中的各条倒排链的长度;
通过所述倒排索引查询到与至少一个关键词对应的多条倒排链;
按照长度从小到大的顺序对所述多条倒排链进行排序;
从长度最小的倒排链开始对所述排序后的多条倒排链进行顺序归并。
优选的,在建立倒排索引的过程中还包括建立分别包含检索单元和语义单元的多条倒排链。
优选的,所述检索单元为通过小粒度分词方法获得的关键词。
优选的,所述语义单元为通过大粒度分词方法获得的关键词。
优选的,在建立倒排索引的过程中,包括将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置。
优选的,所述文档的多维特征包括文档的点击量、文档质量和文档的作者。
优选的,所述关键词是通过采用多粒度分词方法对给定文本进行分词产生的。
优选的,采用插入排序法、冒泡排序法或者选择排序法来按照长度从小到大的顺序对所述多条倒排链进行排序。
优选的,在对所述排序后的多条倒排链进行顺序归并时采用截断方法来进行,具体过程是:召回预设数量的排在倒排链靠近链头位置的文档后提前结束归并。
在本发明的实施例中还提供了一种实现倒排链快速归并的装置,其包括:
倒排索引建立单元,用于预先建立倒排索引并记录该倒排索引中的各条倒排链的长度;
查询单元,用于通过倒排索引查询到与至少一个关键词对应的多条倒排链;
排序单元,用于按照长度从小到大的顺序对所述多条倒排链进行排序;
归并单元,用于从长度最小的倒排链开始对所述排序后的多条倒排链进行顺序归并。
优选的,所述倒排索引建立单元还用于建立分别包含检索单元和语义单元的多条倒排链。
优选的,所述检索单元为通过小粒度分词方法获得的关键词。
优选的,所述语义单元为通过大粒度分词方法获得的关键词。
优选的,所述实现倒排链快速归并的装置还包括:优先排序装置,用于将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置。
本发明实施例提供的技术方案的有益效果是:在海量数据中一个关键词的倒排链通常会很长,减少不必要的链表遍历是提高检索效率的关键,本发明所提供的实现倒排链快速归并的方法和装置因为优先对链短的倒排链进行归并,进行比较和遍历的次数少;另外在建立倒排索引过程中优先使用多粒度分词的方法建立分别包含检索单元和语义单元的多条倒排链,这样既可以提升搜索结果的召回率,又减少了需要归并的倒排链的数量和长度,减少了遍历的次数;另外在建立倒排索引的过程中还包括将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置,这样可以在召回预设数量的排在倒排链靠近链头位置的文档后提前结束归并。这些措施减少了查询所需的时间,提高了查询时的搜索效率和准确率,从而提高搜索引擎的整体性能。
附图说明
图1是本发明的实现倒排链快速归并的方法的流程图;
图2是本发明的实现倒排链快速归并的装置的结构示意图;
图3是本发明的实现倒排链快速归并的装置的一个优选实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面将结合本发明的附图和具体实施例,对本发明的技术方案进行清楚、完整地描述。
图1是本发明的实现倒排链快速归并的方法的流程图。如图1所示,本发明的实现倒排链快速归并的方法包括:
步骤S101:预先建立倒排索引并记录该倒排索引中的各条倒排链的长度。
索引是搜索技术的重要组成部分,通过构建结构简单、有效、高性能的索引,可以帮助用户快捷地获取所查询的信息。目前,搜索技术常采用倒排索引,倒排索引可以被看成一个链表数组,每个链表的表头包含关键词,其后续单元则包括所有包含这个关键词的文档标号以及一些其他信息。这些信息可以是文档中该词的频率,也可以是文档中该词的位置等信息。这样在检索时可以直接利用各个链表表头的关键词来查找包含这些关键词的文档,而无需对所有的文档逐个进行基于关键词的检索,有利于提高检索的效率。大多数搜索引擎公司基本都采用了倒排索引方法来实现信息的检索。常用的倒排索引创建方式包括二分法、字典树法和哈希法等。例如,二分法是将用于创建索引的词条按照一定的顺序排列,例如,按照字典顺序或者汉字内码顺序有序排列,并存储词条对应的数据,然后根据用户输入的搜索关键词,采用二分法从顺序排列中的词条中查找该搜索关键词对应的词条,再根据查询得到的词条获取相应的数据,将数据信息向用户显示输出。当然还可以采用其它公知的建立索引方法的方法,这里不再赘述。在建立倒排索引时,可以记录该倒排索引中的各条倒排链的长度大小。
另外,在建立倒排索引的过程中还包括建立分别包含检索单元和语义单元的多条倒排链。所述检索单元为通过小粒度分词方法获得的关键词。所述语义单元为通过大粒度分词方法获得的关键词。该语义单元可以包括至少2个检索单元。所述小粒度分词方法和大粒度分词方法可以采用本领域公知的方法,这里不再赘述。这种在建立倒排索引过程中优先使用多粒度分词的方法建立分别包含检索单元和语义单元的多条倒排链的好处是:既可以提升搜索结果的召回率,又减少了需要归并的倒排链的数量和长度,减少了遍历的次数。
另外,在建立倒排索引的过程中还包括将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置。所述文档的多维特征包括文档的点击量、文档质量和文档的作者。在这里可以认为点击量超过预设阈值的文档为优质文档,还可以认为文档的作者属于著名或知名的作者,例如科学院院士、大学教授、或者公众熟知的作者,该作者写的文档为优质文档;另外,还可以根据文档质量来判断是否为优质文档,例如文档讨论的内容、文档的篇幅数等。将优质文档排在倒排链靠近链头的位置的好处是:在后续的归并处理中可以在召回一定文档数量(几百或几千篇)后提前结束归并。
步骤S102:通过所述倒排索引查询到与至少一个关键词对应的多条倒排链。
所述至少一个关键词是通过采用多粒度分词方法对给定文本进行分词产生的。对于中文搜索引擎而言:粒度是衡量分词后的文本所含信息量的大小。文本所含信息量越多,粒度就越大,反之就小。在用户在搜索引擎的搜索界面输入给定文本(也叫查询文本)后,搜索引擎为了更全面、更准确的显示搜索结果,需要先对给定文本进行分词处理。分词技术是搜索引擎技术中的核心技术之一。尤其是对于中文搜索引擎,分词准确性对于搜索结果是至关重要的。众所周知,英文是以词为单位的,词和词之间是靠空格隔开,而中文是以字为单位,句子中所有的字连起来才能描述一个意思。例如,英文句子Iamastudent,用中文则为:“我是一个学生”。计算机可以很简单地通过空格知道student是一个单词,但是不能很容易明白“学”、“生”两个字合起来才表示一个词。再如,在“王君虎去北京了”这句话中,“王君虎”是个词,因为是一个人的名字,但是让计算机去识别就困难了。目前,国内已经研究出多种中文分词方法,多粒度分词方法是其中的一种。本发明可以采用本领域公知的任意一种分词方法,产生至少一个关键词,然后通过倒排索引查询到所述至少一个关键词对应的多条倒排链。
步骤S103:按照长度从小到大的顺序对所述多条倒排链进行排序。
根据记录的各条倒排链的长度大小,采用本领域技术人员公知的任意排序方法来按照长度从小到大的顺序对所述查询到的多条倒排链进行排序。公知的排序方法包括:插入排序法、冒泡排序法、选择排序法等。所述插入排序法就是检查第i个数字,如果在它的左边的数字比它大,进行交换,这个动作一直继续下去,直到这个数字的左边数字比它还要小就可以停止。所述冒泡排序法就是依次比较相邻的两个数,将小数放在前面,大数放在后面,如此重复直至最终完成排序;由于在排序过程中总是小数往前放,大数往后放,相当于气泡往上升,所以称作冒泡排序法。所述选择排序法就是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。
步骤S104:从长度最小的倒排链开始对所述排序后的多条倒排链进行顺序归并。
在完成对所述查询到的多条倒排链的从小到大排序之后,采用最短倒排链优先进行归并的原则,从长度最小的倒排链开始对所述排序后的多条倒排链进行顺序归并,直至将所述多条倒排链归并完毕。
下面通过具体例子来说明如何进行归并。
例如,用户想通过搜索引擎检索给定文本“市场营销科学方法”,搜索引擎先将“市场营销科学方法”切分成多个关键词:“市场”、“营销”、“科学”、“方法”,通过倒排索引查询到分别包含关键词“市场”、“营销”、“科学”、“方法”的4条倒排链。假设包含关键词“市场”的倒排链的长度为200,包含关键词“营销”的倒排链的长度为170,包含关键词“科学”的倒排链的长度为150,包含关键词“技术”的倒排链的长度为220;则对这4条倒排链按链长长度为从小到大的顺序进行排序,得到排序为:①包含关键词“科学”的倒排链、②包含关键词“营销”的倒排链、③包含关键词“市场”的倒排链、④包含关键词“技术”的倒排链;从长度最小的倒排链开始对所述排序后的这4条倒排链进行顺序归并就是:优先将①包含关键词“科学”的倒排链和②包含关键词“营销”的倒排链进行归并,合并成包含关键词“科学”和“营销”的倒排链,然后将该合并的包含关键词“科学”和“营销”的倒排链与③包含关键词“市场”的倒排链进行归并,合并成包含关键词“科学”、“营销”和“市场”的倒排链,最后将该合并的包含关键词“科学”、“营销”和“市场”的倒排链与④包含关键词“技术”的倒排链进行归并,从而得到想要的搜索结果。
综上所述,由于先归并长度小的倒排链,这减少了比较和遍历的次数,进而加快了归并速度,减少了查询所需的时间。
另外,在一个优选实施例中,在对所述排序后的多条倒排链进行顺序归并时采用截断方法来进行,具体过程是:召回预设数量的排在倒排链靠近链头位置的文档后提前结束归并。具体而言,在查询时需要合并链可能会有几十万、上百万甚至上千万的长度,而真正需要的结果就几十或几百个。遍历完整的一条倒排链的话会非常耗时,影响用户体验,所以可以采用截断的方式来保证响应时间。正如在步骤S101的优选实施例中描述的,在建立倒排索引的过程中将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置,在归并处理时可以在召回少量文档数量后能够提前结束归并。该少量文档数量可以是几百或几千,这样优质文档优先排在倒排链靠近链头的位置,就可以提前找到目标文档,由此提前结束归并。这样的好处在于:提前结束归并操作,减少了遍历的次数,减少了查询所需的时间,提高了查询时的搜索效率和准确率,从而提高搜索引擎的整体性能。
本发明实施例提供的实现倒排链快速归并的方法,其有益效果是:优先对链短的倒排链进行归并,进行比较和遍历的次数少;另外在建立倒排索引过程中优先使用多粒度分词的方法建立分别包含检索单元和语义单元的多条倒排链,这样既可以提升搜索结果的召回率,又减少了需要归并的倒排链的数量和长度,减少了遍历的次数;另外在建立倒排索引的过程中还包括将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置,这样可以在召回预设数量的排在倒排链靠近链头位置的文档后提前结束归并。这些措施减少了查询所需的时间,提高了查询时的搜索效率和准确率,从而提高搜索引擎的整体性能。
对于中文搜索引擎,中文分词方法直接影响搜索的准确性。如果分词粒度过大,将导致只有输入特定关键词才能搜索到相应结果。如果分词粒度过小,则影响搜索的准确性。举一个简单的例子:“北京饭店”这个词,如果分词粒度过大,例如为“北京饭店”,则必须输入“北京饭店”这4个字才能搜索到相关的文章,仅输入“北京”或者“饭店”,则得不到想要的结果。但如果分词粒度过小,例如分成“北”/“京”/“饭”/“店”,那么当用户输入鞋店时(分词为“鞋”/“店”)也能搜索到“北京饭店”,但这是用户不希望的搜索结果。所以准确的分词方案应该是“北京”/“饭店”。
准确的分词方案对搜索结果非常重要。举例来说,在电子商务领域,销售者和购买者都要求有较高的搜索召回率,小粒度分词方案更合适;而在搜索网页时,由于存在海量的网页数据,此时搜索精准率对用户尤其重要,大粒度分词方案更合适。搜索召回率是指搜索到的相关文档数与文档库中所有相关文档数的比率;搜索精准率是指检索出的相关文档数与检索出的文档总数的比率。一般来说,分词粒度越小,搜索召回率越高;分词粒度越大,搜索准确性越高。
在同一应用领域的不同使用阶段,对分词粒度的要求也不相同。例如使用搜索引擎,需要小粒度分词以便找到足够多的网页,在排序时需要大粒度分词以提高搜索精准率。但是分词粒度越小,倒排链就越长,分词粒度的层次越多,索引的数量就越多,这对搜索系统的性能构成了极大的考验。
综上所述,本发明的优选实施例在建立倒排索引过程中优先使用多粒度分词的方法建立分别包含检索单元和语义单元的多条倒排链,可以减少归并的倒排链数量,并且进一步减少倒排链的长度。例如,用户检索“中华人民共和国建立时间”这个词,采用小粒度分词方法得到的检索单元是“中华”、“人民”、“共和国”、“建立”、“时间”,采用大粒度分词方法得到的语义单元是“中华人民共和国”、“建立”、“时间”,可以建立分别包含“中华”、“人民”、“共和国”、“建立”、“时间”和“中华人民共和国”的多条倒排链,这样包含“中华人民共和国”的倒排链的长度最小,根据本发明的从长度最小的倒排链开始对所述排序后的多条倒排链进行顺序归并,可以将包含“中华人民共和国”的倒排链和包含“建立”的倒排链以及包含“时间”的倒排链进行归并处理,需要归并的倒排链数量少,加快了归并速度,减少了查询所需的时间。
上述描述的各种实施例或优选实施例可以进行任意组合,以减少遍历的次数,减少查询所需的时间,提高查询时的搜索效率和准确率,从而提高搜索引擎的整体性能。
图2是本发明的实现倒排链快速归并的装置的结构示意图。
如图2所示,所述实现倒排链快速归并的装置,其包括:
倒排索引建立单元,用于预先建立倒排索引并记录该倒排索引中的各条倒排链的长度;
查询单元,用于通过所述倒排索引查询到与至少一个关键词对应的多条倒排链;
排序单元,用于按照长度从小到大的顺序对所述多条倒排链进行排序;
归并单元,用于从长度最小的倒排链开始对所述排序后的多条倒排链进行顺序归并。
在一个优选实施例中,所述倒排索引建立单元还用于建立分别包含检索单元和语义单元的多条倒排链。所述检索单元为通过小粒度分词方法获得的关键词;所述语义单元为通过大粒度分词方法获得的关键词。
图3是本发明的实现倒排链快速归并的装置的一个优选实施例的结构示意图。如图3所示,所述实现倒排链快速归并的装置还包括优先排序装置,用于将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置。所述文档的多维特征包括文档的点击量、文档质量和文档的作者。
所述描述实现倒排链快速归并的装置的各种实施例或优选实施例可以进行任意组合,以减少遍历的次数,减少查询所需的时间,提高查询时的搜索效率和准确率,从而提高搜索引擎的整体性能。
所述实现倒排链快速归并的装置的实施例中各个单元的具体功能和交互方式可参见上述对方法步骤相对应的实施例的记载,在此不再赘述。
综上所述,本发明实施例提供的实现倒排链快速归并的装置,其有益效果是:优先对链短的倒排链进行归并,进行比较和遍历的次数少;另外在建立倒排索引过程中优先使用多粒度分词的方法建立分别包含检索单元和语义单元的多条倒排链,这样既可以提升搜索结果的召回率,又减少了需要归并的倒排链的数量和长度,减少了遍历的次数;另外在建立倒排索引的过程中还包括将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置,这样可以在召回预设数量的排在倒排链靠近链头位置的文档后提前结束归并。这些措施减少了查询所需的时间,提高了查询时的搜索效率和准确率,从而提高搜索引擎的整体性能。
本发明实施例所提供的实现倒排链快速归并的方法的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (15)

1.一种实现倒排链快速归并的方法,其包括:
预先建立倒排索引并记录该倒排索引中的各条倒排链的长度;
通过所述倒排索引查询到与至少一个关键词对应的多条倒排链;
按照长度从小到大的顺序对所述多条倒排链进行排序;
从长度最小的倒排链开始对所述排序后的多条倒排链进行顺序归并。
2.根据权利要求1所述的方法,其特征在于,在建立倒排索引的过程中还包括建立分别包含检索单元和语义单元的多条倒排链。
3.根据权利要求2所述的方法,其特征在于,所述检索单元为通过小粒度分词方法获得的关键词。
4.根据权利要求2所述的方法,其特征在于,所述语义单元为通过大粒度分词方法获得的关键词。
5.根据权利要求1或2所述的方法,其特征在于,在建立倒排索引的过程中,还包括将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置。
6.根据权利要求5所述的方法,其特征在于,所述文档的多维特征包括文档的点击量、文档质量和文档的作者。
7.根据权利要求1所述的方法,其特征在于,还包括:所述关键词是通过采用多粒度分词方法对给定文本进行分词产生的。
8.根据权利要求1所述的方法,其特征在于,还包括:采用插入排序法、冒泡排序法或者选择排序法来按照长度从小到大的顺序对所述多条倒排链进行排序。
9.根据权利要求5所述的方法,其特征在于,还包括:在对所述排序后的多条倒排链进行顺序归并时采用截断方法来进行,具体过程是:召回预设数量的排在倒排链靠近链头位置的文档后提前结束归并。
10.一种实现倒排链快速归并的装置,其包括:
倒排索引建立单元,用于预先建立倒排索引并记录该倒排索引中的各条倒排链的长度;
查询单元,用于通过所述倒排索引查询到与至少一个关键词对应的多条倒排链;
排序单元,用于按照长度从小到大的顺序对所述多条倒排链进行排序;
归并单元,用于从长度最小的倒排链开始对所述排序后的多条倒排链进行顺序归并。
11.根据权利要求10所述的装置,其特征在于,所述倒排索引建立单元还用于建立分别包含检索单元和语义单元的多条倒排链。
12.根据权利要求11所述的方法,其特征在于,所述检索单元为通过小粒度分词方法获得的关键词。
13.根据权利要求11所述的方法,其特征在于,所述语义单元为通过大粒度分词方法获得的关键词。
14.根据权利要求10所述的装置,其特征在于,还包括:优先排序单元,用于将倒排链所记录的文档按照多维特征进行排序,确保优质文档排在倒排链靠近链头的位置。
15.根据权利要求14所述的方法,其特征在于,所述文档的多维特征包括文档的点击量、文档质量和文档的作者。
CN201510611489.0A 2015-09-22 2015-09-22 一种实现倒排链快速归并的方法和装置 Pending CN105224624A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510611489.0A CN105224624A (zh) 2015-09-22 2015-09-22 一种实现倒排链快速归并的方法和装置
US15/270,725 US10452692B2 (en) 2015-09-22 2016-09-20 Method and an apparatus for fast merging inverted chains

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510611489.0A CN105224624A (zh) 2015-09-22 2015-09-22 一种实现倒排链快速归并的方法和装置

Publications (1)

Publication Number Publication Date
CN105224624A true CN105224624A (zh) 2016-01-06

Family

ID=54993592

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510611489.0A Pending CN105224624A (zh) 2015-09-22 2015-09-22 一种实现倒排链快速归并的方法和装置

Country Status (2)

Country Link
US (1) US10452692B2 (zh)
CN (1) CN105224624A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912696A (zh) * 2016-04-25 2016-08-31 中国互联网络信息中心 一种基于对数归并的dns索引创建方法及查询方法
CN108241713A (zh) * 2016-12-27 2018-07-03 南京烽火软件科技有限公司 一种基于多元切分的倒排索引检索方法
CN112001161A (zh) * 2020-08-25 2020-11-27 上海新炬网络信息技术股份有限公司 一种文本查重方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106156000B (zh) * 2015-04-28 2020-03-17 腾讯科技(深圳)有限公司 基于求交算法的搜索方法及搜索系统
CN110727769B (zh) * 2018-06-29 2024-04-19 阿里巴巴(中国)有限公司 语料库生成方法及装置、人机交互处理方法及装置
CN111931034B (zh) * 2020-08-24 2024-01-26 腾讯科技(深圳)有限公司 数据搜索方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060053157A1 (en) * 2004-09-09 2006-03-09 Pitts William M Full text search capabilities integrated into distributed file systems
CN102456055A (zh) * 2010-10-28 2012-05-16 腾讯科技(深圳)有限公司 兴趣点检索的方法及装置
CN103198079A (zh) * 2012-01-06 2013-07-10 北大方正集团有限公司 相关搜索的实现方法和装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5893094A (en) * 1997-07-25 1999-04-06 Claritech Corporation Method and apparatus using run length encoding to evaluate a database
WO2004023243A2 (en) * 2002-09-03 2004-03-18 X1 Technologies, Llc Apparatus and methods for locating data
US7921100B2 (en) * 2008-01-02 2011-04-05 At&T Intellectual Property I, L.P. Set similarity selection queries at interactive speeds
US10078697B2 (en) * 2012-08-24 2018-09-18 Yandex Europe Ag Computer-implemented method of and system for searching an inverted index having a plurality of posting lists
US9501506B1 (en) * 2013-03-15 2016-11-22 Google Inc. Indexing system
KR101482229B1 (ko) * 2013-04-29 2015-01-14 주식회사 실리콘아츠 컴퓨터 실행 가능한 데이터 정렬 방법, 이를 수행하는 데이터 정렬 시스템 및 이를 저장하는 기록매체
CN104679778B (zh) * 2013-11-29 2019-03-26 腾讯科技(深圳)有限公司 一种搜索结果的生成方法及装置
US11809501B2 (en) * 2014-08-28 2023-11-07 Ebay Inc. Systems, apparatuses, and methods for providing a ranking based recommendation

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060053157A1 (en) * 2004-09-09 2006-03-09 Pitts William M Full text search capabilities integrated into distributed file systems
CN102456055A (zh) * 2010-10-28 2012-05-16 腾讯科技(深圳)有限公司 兴趣点检索的方法及装置
CN103198079A (zh) * 2012-01-06 2013-07-10 北大方正集团有限公司 相关搜索的实现方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
赵长林: "倒排文件的组织与最佳归并分析", 《西南民族学院学报 自然科学版》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912696A (zh) * 2016-04-25 2016-08-31 中国互联网络信息中心 一种基于对数归并的dns索引创建方法及查询方法
CN108241713A (zh) * 2016-12-27 2018-07-03 南京烽火软件科技有限公司 一种基于多元切分的倒排索引检索方法
CN108241713B (zh) * 2016-12-27 2021-12-28 南京烽火星空通信发展有限公司 一种基于多元切分的倒排索引检索方法
CN112001161A (zh) * 2020-08-25 2020-11-27 上海新炬网络信息技术股份有限公司 一种文本查重方法
CN112001161B (zh) * 2020-08-25 2024-01-19 上海新炬网络信息技术股份有限公司 一种文本查重方法

Also Published As

Publication number Publication date
US20170083610A1 (en) 2017-03-23
US10452692B2 (en) 2019-10-22

Similar Documents

Publication Publication Date Title
CN110674429B (zh) 用于信息检索的方法、装置、设备和计算机可读存储介质
US10146862B2 (en) Context-based metadata generation and automatic annotation of electronic media in a computer network
Manjari et al. Extractive Text Summarization from Web pages using Selenium and TF-IDF algorithm
CN105224624A (zh) 一种实现倒排链快速归并的方法和装置
CN100458779C (zh) 扩展索引的方法
Huang et al. Refseer: A citation recommendation system
US10733359B2 (en) Expanding input content utilizing previously-generated content
CN103425687A (zh) 一种基于关键词的检索方法和系统
CN104123366A (zh) 一种搜索方法及搜索服务器
CN105404677A (zh) 一种基于树形结构的检索方法
CN1629837A (zh) 电子文档的处理、浏览及分类查询的方法、装置及其系统
Jain et al. Context sensitive text summarization using k means clustering algorithm
JP2009129323A (ja) 同義語抽出装置
CN109885641A (zh) 一种数据库中文全文检索的方法及系统
JP6260678B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
CN113918807A (zh) 数据推荐方法、装置、计算设备及计算机可读存储介质
JP5869948B2 (ja) パッセージ分割方法、装置、及びプログラム
CN105426490B (zh) 一种基于树形结构的索引方法
US20170169159A1 (en) Repetition identification
CN105426551A (zh) 文言文搜索方法和装置
CN114218347A (zh) 多个文件内容的快速索引查找方法
JP2009048351A (ja) 情報検索装置、情報検索方法および情報検索プログラム
JP2011100302A (ja) ランキング関数生成装置、ランキング関数生成方法、ランキング関数生成プログラム
Dritsas et al. An apache spark implementation for text document clustering
CN105808607A (zh) 一种文档索引的生成方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20160106

RJ01 Rejection of invention patent application after publication