一、倒排索引(极简版)
核心定义:倒排索引是「关键词→文档ID」的映射表,和「文档→关键词」的正排索引相反,是ES查询快的关键。
二、实战举例(可直接对照理解)
1. 准备数据(模拟ES中的文档)
| 文档ID | 文档内容 |
|---|---|
| 1 | 华为手机性价比高 |
| 2 | 小米手机续航好 |
2. 构建倒排索引(ES自动完成)
第一步:分词(拆出关键词)
- 文档1:华为、手机、性价比、高
- 文档2:小米、手机、续航、好
第二步:生成映射表(倒排索引核心)
| 词条 | 对应文档ID |
|---|---|
| 华为 | [1] |
| 手机 | [1,2] |
| 小米 | [2] |
| 续航 | [2] |
3. 查询使用(ES的核心优势)
- 当搜「手机」:ES直接查映射表,秒定位文档1、2,无需遍历所有文档;
- 当搜「华为」:仅匹配文档1,精准且快速。
三、核心特点(3句话)
- 查询快:关键词直接映射文档,不用全量遍历;
- 写稍慢:新增/改文档需更新映射表;
- 不可改:索引创建后无法修改,更新文档实际是标记旧文档删除、新增新索引。
总结
- 倒排索引是「关键词→文档ID」的映射表,是ES快查的核心;
- 举例:搜「手机」时,ES通过映射表直接找到包含该词的所有文档;
- 核心特点:查得快、写得稍慢、索引不可改。
浙公网安备 33010602011771号