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会缓存热词。

相关推荐
旺仔Sec2 分钟前
2026年河北省职业院校学生技能大赛大数据应用与服务(中职组)赛项样题
大数据
本旺3 分钟前
【Starrocks + Hive 】BitMap + 物化视图 实战记录
大数据·数据仓库·hive
绿算技术5 分钟前
在稀缺时代,定义“性价比”新标准
大数据·数据结构·科技·算法·硬件架构
艾莉丝努力练剑7 分钟前
【Linux进程(二)】Linux进程的诞生、管理与消亡:一份基于内核视角的完整分析
大数据·linux·运维·服务器·c++·安全·centos
AI算法蒋同学8 分钟前
02.AIGC初学者指南-生成式人工智能和大型语言模型简介
人工智能·搜索引擎·语言模型
HalvmånEver10 分钟前
Linux:Ext系列⽂件系统(一)
大数据·linux·运维
电商API_1800790524715 分钟前
主流电商平台 API 横向测评:淘宝、京东、拼多多接口能力与对接成本分析
大数据·开发语言·网络·数据库·人工智能
赵谨言16 分钟前
基于OpenCV的数字识别系统
大数据·开发语言·经验分享·python
·云扬·2 小时前
【Bug】 Elasticsearch启动失败(exit code 78):2个bootstrap检查问题排查与解决
elasticsearch·bootstrap·bug
老蒋新思维12 小时前
创客匠人视角:智能体重构创始人 IP,知识变现从 “内容售卖” 到 “能力复制” 的革命
大数据·网络·人工智能·tcp/ip·创始人ip·创客匠人·知识变现