写入流程与近实时搜索
1. 这是什么
ES 的写入不是立刻就能被搜索到,而是经过刷新和段合并等过程进入可检索状态。
这就是它“近实时搜索”特性的来源。
2. 为什么重要
如果不了解写入链路,就很难解释为什么数据刚写入时搜索不到,或者为什么频繁刷新会影响性能。
这是业务预期和性能治理中的高频问题。
3. 核心内容
- 写入 buffer
- refresh
- flush
- segment
- merge
- 近实时搜索机制
4. 学习重点
- 理解写入和可搜索不是同一时刻
- 理解 refresh 会影响写入吞吐
- 理解 segment 合并和资源消耗的关系
5. 常见问题
- 误以为写成功就一定能立刻搜到
- 频繁主动 refresh 导致性能抖动
- 忽略写入和查询的权衡
6. 练习建议
- 画一张 ES 写入到可搜索的流程图
- 观察 refresh 间隔变化带来的影响
- 总结写入和搜索一致性的业务处理方式
7. 自测问题
- 为什么 ES 是近实时而不是强实时
- refresh 和 flush 分别在做什么
- 为什么频繁 refresh 会影响性能