知识卡片
倒排索引是全文搜索的核心解法
内容
关系库索引是”正排”思路——按文档查内容,无法应对任意关键词组合的模糊匹配(否则要给每种组合建索引,或退化成低效扫描)。搜索引擎改用”倒排索引”:先建”单词→文档列表”映射,查询时直接按关键词定位文档,天然支持任意组合与模糊匹配。接入结构化数据通常先转成文档格式,再对每个字段建倒排索引。发散:两者区别是”从哪个方向建映射”——该用哪种,看条件是查内容还是查实体。
参考来源
- 位置:《从0开始学架构》第19章《16|高性能NoSQL》"全文搜索引擎"一节(源文件:_epub-src/OEBPS/Text/part0018_split_005.html)
- 结论依据:原文明确"'正排索引'的基本原理是建立文档到单词的索引……适用于根据文档名称来查询文档内容","倒排索引……建立单词到文档的索引……适用于根据关键词来查询文档内容",并说明Elasticsearch"每个字段都有为了快速检索设置的专用倒排索引"。
- 原始内容:倒排索引……是一种索引方法,其基本原理是建立单词到文档的索引……'正排索引'的基本原理是建立文档到单词的索引……正排索引适用于根据文档名称来查询文档内容……倒排索引适用于根据关键词来查询文档内容。