Elasticsearch 倒排索引原理

举报
叶康铭 发表于 2021/03/26 00:58:42 2021/03/26
3.3k+ 0 0
【摘要】 Elasticsearch 最强悍的功能之一就是全文检索,如何可以做到呢,其实本质上的原理就需要用的倒排索引了,本文将探索一下倒排索引的工作原理。 正排索引 (Forward Index) 根据 ID 去找到对应的文档 倒排索引 (Inverted Index) 根据 内容 去找到对应的文档 工作原理 通过标记位匹配,找到相关度最高的词进行评分...

Elasticsearch 最强悍的功能之一就是全文检索,如何可以做到呢,其实本质上的原理就需要用的倒排索引了,本文将探索一下倒排索引的工作原理。

正排索引 (Forward Index)

根据 ID 去找到对应的文档

倒排索引 (Inverted Index)

根据 内容 去找到对应的文档
在这里插入图片描述

工作原理

通过标记位匹配,找到相关度最高的词进行评分后输出
在这里插入图片描述
同样的场景下对文本进行搜索,正排索引的时间复杂度为O(n),意思就是有多少条数据就得扫描多少次,但倒排索引的时间复杂度为只需要O(1),意思就是扫描一次就找到文档在哪里。

倒排索引由文档中所有不重复词的列表构成,其中标志列收录了每个词在哪一个位置上出现过。

文章来源: blog.csdn.net,作者:叶康铭,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/m0_38030719/article/details/109103754

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

作者其他文章

评论(0

抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。