elasticsearch中的倒排索引

倒排索引是搜索引擎中常用的一种数据结构,适用于全文检索,能够通过文本内容高效检索到相应的文档。

一、倒排索引的基本概念

正排索引:传统的索引方式,按照文档id顺序存储文档,通过文档id找到文档对应的词。因此当需要找到包含某个词的文档时,需要遍历所有文档,不适合全文检索。

|-------|----------|
| doc_1 | cat dog |
| doc_2 | dog fish |
| doc_3 | cat fish |

倒排索引:将文档中的每个词映射到包含该词的文档id列表,这样就可以快速找到包含某个词的所有文档。

|------|----------|
| cat | [1, 3] |
| dog | [1, 2] |
| fish | [2, 3] |

二、倒排索引优势

(1) 快速检索,避免全局扫描所有文档

(2)节省存储空间,倒排索引只存储词条与文档的关系,不会重复存储词条

(3)适合全文检索

三、elasticsearch中的倒排索引

elasticsearch在实际应用中,还对倒排索引做了一系列优化,以提高性能和存储效率:

(1)压缩。倒排索引中的文档列表通常会进行压缩。

(2)分片与副本。通过分片(shard)和副本(replica)提高并发性和容错性。

(3)缓存机制。es会缓存热词。

相关推荐
智慧化智能化数字化方案21 分钟前
财务数字化——解读农化集团业财一体化数字化转型解决方案【附全文阅读】
大数据·人工智能
琅琊榜首202041 分钟前
AI+编程实操:小说高效改编短剧的全流程指南
大数据·人工智能
jiaozi_zzq1 小时前
2026年大数据与财务管理专业就业岗位全解析与进阶指南
大数据·数据分析·证书·财务
海南java第二人1 小时前
Flink运行时组件深度解析:Java工程师的架构设计与实战指南
java·大数据·flink
WJX_KOI1 小时前
保姆级教程:Apache Flink CDC(standalone 模式)部署 MySQL CDC、PostgreSQL CDC 及使用方法
java·大数据·mysql·postgresql·flink
AI实战架构笔记1 小时前
大数据预测分析在房地产行业的市场动态监测
大数据·ai
实时数据2 小时前
DPI深度数据包检测 监测用户浏览搜索行为 分析在线活动 频繁访问的购物网站或搜索的关键词 等判断其消费偏好
大数据·安全·big data
Elasticsearch2 小时前
使用 Elasticsearch 和神经模型为复杂语言提供更好的文本分析
elasticsearch
智慧化智能化数字化方案3 小时前
数据治理进阶——解读大数据治理主数据管理规划设计方案【附全文阅读】
大数据·数据治理·主数据管理规划
Hello.Reader3 小时前
Flink 大状态 Checkpoint 调优让 Checkpoint 跑得稳、恢复追得上
大数据·flink