高并发架构实战 Day44

ELK基本都用过,一条日志在入库时,它的具体内容并不会被真实保存在倒排索引中。 在日志入库之前,会先进行分词,过滤掉无用符号等分隔词,找出文档中每个关键词(Term)在文档中的位置及频率权重;然后,将这些关键词保存在 Term Index 以及 Term Dictionary 内;最后,将每个关键词对应的文档 ID 和权重、位置等信息排序合并到 Posting List 中进行保存。通过上述三个结构就实现了一个优化磁盘 IO 的倒排索引。 而查询时,Elasticsearch 会将用户输入的关键字通过分词解析出来,在内存中的 Term Index 单词索引查找到对应 Term Dictionary 字典的索引所在磁盘的 block。接着,由 Term Dictionary 找到对关键词对应的所有相关文档 DocId 及权重,并根据保存的信息和权重算法对查询结果进行排序返回结果。

相关推荐
码视野3 分钟前
基于 Spring Boot + Vue3 的【高校化学实验室安全准入考试与危化品配伍排查系统】设计与实现(含PRD/三端高保真源码/大屏)
前端·人工智能·spring boot·后端·安全·vue3
LXMXHJ8 分钟前
springboot项目测试
java·spring boot·后端·测试
叫我:松哥18 分钟前
基于Flask的教师评教管理系统,支持学生和教师两种角色登录
数据库·后端·python·数据挖掘·flask
JuiceFS35 分钟前
如何通过 S3 和 WebDAV 协议访问 JuiceFS?
运维·人工智能·后端
65岁退休Coder1 小时前
LangGraph v1.2.9 核心概念 & 流程控制
后端·python·langchain
程序员鱼皮2 小时前
爆火的《牛来》模型正式发布!DeepSeek 的排名又下降了。。
前端·后端·ai编程
灯澜忆梦2 小时前
【基于GO的Web开发15】gin路由和路由组
前端·后端·golang·gin
陈老老老板2 小时前
2026 Web Scraping 教程:用 Codex + Bright Data 构建 Agent 原生数据采集流程
后端
爱勇宝2 小时前
从前端到全栈,我最后学会的是:先做产品
前端·后端