Elasticsearch 最强悍的功能之一就是全文检索,如何可以做到呢,其实本质上的原理就需要用的倒排索引了,本文将探索一下倒排索引的工作原理。
正排索引 (Forward Index)
根据 ID 去找到对应的文档
倒排索引 (Inverted Index)
根据 内容 去找到对应的文档
工作原理
通过标记位匹配,找到相关度最高的词进行评分后输出
同样的场景下对文本进行搜索,正排索引的时间复杂度为O(n),意思就是有多少条数据就得扫描多少次,但倒排索引的时间复杂度为只需要O(1),意思就是扫描一次就找到文档在哪里。
倒排索引由文档中所有不重复词的列表构成,其中标志列收录了每个词在哪一个位置上出现过。
文章来源: yekangming.blog.csdn.net,作者:叶康铭,版权归原作者所有,如需转载,请联系作者。
原文链接:yekangming.blog.csdn.net/article/details/109103754