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

相关推荐
赵谨言5 分钟前
基于Python和ArcPy的不动产数据入库技术与运用
大数据·开发语言·经验分享·python
一条咸鱼_SaltyFish26 分钟前
Elasticsearch索引规划:从字段类型到分片策略的实战思考
大数据·elasticsearch·搜索引擎·全文检索·后端开发·分片策略·索引规划
海兰27 分钟前
Elasticsearch 9.3.0 系统日志采集详解
大数据·elasticsearch·搜索引擎
海兰35 分钟前
Elastic 可观测性解决方案
elasticsearch
计算机编程-吉哥35 分钟前
大数据毕业设计 基于大数据的计算机岗位招聘数据可视化分析系统 计算机毕业设计【项目+论文+安装调试】
大数据·机器学习·信息可视化·数据分析·毕业设计·计算机毕业设计选题·大数据毕业设计选题推荐
说私域41 分钟前
链动2+1模式AI智能名片S2B2C商城小程序在微商信任重建中的创新应用与价值实现
大数据·人工智能·小程序·私域运营
Hello.Reader1 小时前
Flink Balanced Tasks Scheduling:并行度不一致时,怎么把 TaskManager “压得更均匀”
大数据·flink
爱吃羊的老虎2 小时前
【大模型应用】入门了解AI Agent
大数据·人工智能
陈天伟教授2 小时前
人工智能应用- 搜索引擎:02. 搜索引擎发展史
人工智能·深度学习·神经网络·游戏·搜索引擎·机器翻译
陈天伟教授2 小时前
人工智能应用- 搜索引擎:01. 互联网时代
人工智能·神经网络·搜索引擎·语言模型·自然语言处理·机器翻译