我正在使用IndexWriter索引一系列文档,并在迭代结束时提交更改。
但是,在迭代的中途,我想使用IndexSearcher“查询”未提交的更改。这是否可以使用当前版本的Lucene.Net?
答案 0 :(得分:1)
当然,你需要一个所谓的近实时阅读器来做到这一点。您可以通过调用IndexWriter.GetReader
函数打开这样的阅读器:
返回一个只读读者,涵盖索引的所有已提交和未提交的更改。这提供了近乎实时的"搜索,因为
IndexWriter
会话期间所做的更改可以快速进行搜索,而无需关闭作者或调用Commit()
。
查看相关的blog post。它适用于Java,但也适用于.NET版本。