在 Lucene 中,“叶子段”(LeafReaderContext)和 “segment”(物理段)在 Lucene 语境下,LeafReaderContext ≈ segment 的运行时只读视图。
概念 所在层次 含义 是否一一对应
segment 物理存储层 Lucene 索引在磁盘上被拆分为多个段(每个段一个 `_X` 命名的文件集)。每个 segment 是一个完整的倒排索引子集,包含倒排表、存储字段、DocValue 等。 ✅ 一对一
LeafReaderContext 逻辑读取层 对应一个 只读、不可变 的 `LeafReader`,它正好包装了 一个 segment。`DirectoryReader` 打开后,`leaves()` 返回的每个 `LeafReaderContext` 就对应磁盘上的一个 segment。 ✅ 一对一
✅ 结论
> 在 Lucene 语境下,LeafReaderContext ≈ segment 的运行时只读视图。
因此,`IndexReader.leaves()` 拿到的每个 LeafReaderContext 就等价于磁盘上的一个 segment,只是前者提供了 docBase 偏移、只读 API 等运行时信息,方便上层并行搜索与合并结果。