如何讲解es中的倒排索引我是一个小白给我解释

什么是倒排索引?

倒排索引(Inverted Index)是一种让搜索变快的技术,是ES和大多数搜索引擎的核心。

1. 正排索引 vs 倒排索引

  • 正排索引 :

    记录"每个文档里有哪些词"

    比如:

    • 文档1:我 爱 北京 天安门
    • 文档2:北京 欢迎 你
    • 文档3:我 爱 你 中国
  • 倒排索引 :

    记录"每个词在哪些文档里出现过"

    比如:

    • 我:文档1、文档3
    • 爱:文档1、文档3
    • 北京:文档1、文档2
    • 你:文档2、文档3
    • 天安门:文档1
    • 欢迎:文档2
    • 中国:文档3

2. 为什么要用倒排索引?

假如你要查"北京"这个词在哪些文档里出现过:

  • 用正排索引:要把所有文档都看一遍,效率很低。
  • 用倒排索引:直接查"北京"这个词,立刻知道是文档1和文档2,非常快!

3. 形象比喻

倒排索引就像一本"词语字典",

你查一个词,字典会告诉你这个词在哪些文章里出现过。

4. 在ES中的作用

  • ES把每个文档分词后,建立倒排索引。
  • 当你搜索一个词时,ES能秒级找到包含这个词的所有文档。

总结一句话

倒排索引就是"词到文档"的映射表,让搜索变得又快又高效。

相关推荐
码事漫谈6 小时前
骂AI,会让它做得更好吗?
后端
陈随易6 小时前
bm2,Node.js 与 Bun 项目部署新选择
前端·后端·程序员
架构技术专栏7 小时前
AI Agent 框架怎么选:从一次制度查询拆出技术边界
后端·面试
明月_清风9 小时前
SaaS 的三层挣钱逻辑,正在被 AI 从第一层击穿
人工智能·后端
谁在黄金彼岸11 小时前
nginx服务化五套方案原理解剖与选型
后端
谁在黄金彼岸11 小时前
WinSW在Win7上失败真相-实测与修复
后端
花间相见11 小时前
【后端开发|Redis进阶01】—— Redis分布式锁全解:从SETNX到Redisson看门狗,再到RedLock
后端·面试
llqbzllll11 小时前
A2A 1.0 到底和 MCP 差在哪:从 Agent Card、Task 到 Java 最小互操作
后端
花间相见11 小时前
【后端开发|JVM基础01】—— Java垃圾回收全解:从分代内存模型到各收集器的分代职责
后端
geovindu11 小时前
rust: Abstract Factory pattern
开发语言·后端·设计模式·rust·抽象工厂模式