news 2026/6/10 0:24:24

【Elasticsearch】副本恢复机制文件级(file-based)操作级(ops-based)顶级理解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【Elasticsearch】副本恢复机制文件级(file-based)操作级(ops-based)顶级理解

两种恢复最终都要**让副本的 Lucene 段文件跟主分片一致**,但“动手对象”不同:

1. **文件级(file-based)**
- 直接复制**整个段文件(.cfs、.si、.dvd …)**到副本节点
- 副本**原样替换**自己的目录,**不再逐条解析**
- 过程中**不打开 Lucene 文档**,只搬运字节;最后由副本自己打开 IndexWriter 做一次 commit 即可

2. **操作级(ops-based)**
- 不复制段文件,而是**一条条发 Translog.Operation**
- 副本收到后,**在本地的 IndexWriter 上重放**:addDocument、deleteDocument、updateDocument …
- 每条操作都会**实时写副本的 Lucene 段**,也会写副本的 translog,最后 commit

→ 所以:

- **文件级**:**主分片**的 Lucene 文件 → **副本磁盘**(字节搬运)
- **操作级**:**主分片**的 Lucene 文档 → **反序列化成操作** → **副本 IndexWriter** → **副本的 Lucene 文件**(逐条写入)

**最终都是让副本的 Lucene 段保持一致,只是路径不同:一个“整块复制”,一个“逐条重放”。**

操作级(ops-based)恢复跟**物理 translog 文件**完全无关:

1. 主分片**不读自己的 `.tlog` 文件**;
2. 用 `LuceneChangesSnapshot` **直接从 Lucene 倒排表里**按 `_seq_no` 把文档/墓碑捞出来;
3. 现场包成 `Translog.Index` / `Delete` / `NoOp` 对象发给副本;
4. 副本收到后,**在自己的 IndexWriter 上重放**这些操作,生成**自己的** Lucene 段。

因此整个流程**既不读主分片的 translog 文件,也不依赖 translog 文件做传输**,只是借用了“Translog.Operation”这个统一的数据结构而已。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/6 6:51:40

【Elasticsearch】如何读源码

我们在看源码的时候感觉好乱 这些类 这些方法 还有业务功能逻辑完全看不懂 怎么办?找切入点我是怎么做的 我找到一个自己熟悉的 感兴趣的点 方法 或者类 然后跟进自己之前看的逻辑中,再一点点的看下去那就对了——**“从自己熟悉且感兴趣的地方下刀”**本…

作者头像 李华
网站建设 2026/6/8 9:13:40

vue基于Spring Boot框架的和vue的城市交通信息平台系统的设计与实现_t64687ok

目录已开发项目效果实现截图开发技术介绍系统开发工具:核心代码参考示例1.建立用户稀疏矩阵,用于用户相似度计算【相似度矩阵】2.计算目标用户与其他用户的相似度系统测试总结源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式&…

作者头像 李华
网站建设 2026/6/8 14:46:25

检索+生成:RAG技术的核心机制及其应用流程解析

RAG概念 检索增强生成(Retrieval Augmented Generation),简称 RAG。可简单描述为:RAG(检索增强生成) 检索技术 LLM 提示。RAG主要用于解决:模型知识的局限性、 模型幻觉问题、数据安全性问题等…

作者头像 李华
网站建设 2026/6/9 10:50:26

Monaco Editor性能优化:彻底解决代码提示响应速度问题

Monaco Editor性能优化:彻底解决代码提示响应速度问题 【免费下载链接】monaco-editor A browser based code editor 项目地址: https://gitcode.com/gh_mirrors/mo/monaco-editor 当你在编写代码时,输入变量名按下.键后,代码提示迟迟…

作者头像 李华
网站建设 2026/6/5 4:04:12

【量子算法调试革命】:用VSCode可视化面板提升效率300%

第一章:量子算法调试的现状与挑战 量子计算正逐步从理论走向实践,但量子算法的调试仍面临诸多技术瓶颈。由于量子态的叠加性与纠缠特性,传统基于观测和断点的调试方法在量子系统中不再适用,测量行为本身可能破坏量子态&#xff0c…

作者头像 李华