Lucene.net 3.0.5 - возможно чтение незафиксированных изменений?
Я индексирую последовательность документов с помощью IndexWriter и фиксирую изменения в конце итерации.
Однако на полпути итерации я хотел бы "запросить" незафиксированные изменения, используя IndexSearcher. Возможно ли это с текущей версией Lucene.Net?
1 ответ
Конечно, вам нужен так называемый читатель, работающий в режиме реального времени. Вы открываете такого читателя, позвонивIndexWriter.GetReader
функция:
возвращает читателя только для чтения, охватывающий все зафиксированные, а также не зафиксированные изменения в индексе. Это обеспечивает поиск "почти в реальном времени" в том, что изменения, внесенные во время
IndexWriter
сеанс можно быстро сделать доступным для поиска, не закрывая писателя и не вызываяCommit()
,
Смотрите соответствующее сообщение в блоге. Это для Java, но относится и к версии.NET.