Lucene 中 IndexWriter 的提交和刷新有什么区别

gus*_*001 5 lucene lucene.net

Lucene 中 IndexWriter 的提交和刷新有什么区别?

这是该课程的文档,但我不清楚这两种方法之间的区别是:

https://lucene.apache.org/core/4_5_0/core/org/apache/lucene/index/IndexWriter.html

gus*_*001 8

提交和刷新将当前内存中的索引数据写入磁盘。但是,Commit 会做一些额外的事情。它还更新索引,表明磁盘上的数据已准备好用于搜索。

因此,如果您始终刷新但从未提交,则无法搜索您的索引。如果您总是提交,但从不刷新,那很好,因为提交会隐式刷新。当您索引大量无法保存在内存中的数据时,刷新通常会自动发生。只有当你达到一个你想要真正坚持的状态时,你才会提交。