F-ES Sitecore
Игнорируйте файлы, которые создает lucene, просто позвольте ему делать то, что он делает. Ваша проблема заключается в том, что вы постоянно добавляете новые документы. Думайте об индексе как о таблице базы данных, каждый раз, когда вы добавляете документ со свойствами, вы добавляете новую строку. Итак, в первый день ваши данные для страницы 1
ID Title
1 Hello
скажем на день, два вы изменить название на Hello World и переиндексировать, теперь у вас есть
ID Title
1 Hello
1 Hello World
Это может быть то, что вы хотите, а может и нет. Скорее всего, нет. Самый простой и дешевый способ справиться с этим-очистить документы перед индексацией
using (var writer = new IndexWriter(directory, analyzer, IndexWriter.MaxFieldLength.UNLIMITED))
{
writer.DeleteAll();
Еще один способ, который требует больше работы,-это когда вы переиндексируете страницу, сначала найдите соответствующий документ, если он существует, поэтому вы будете искать "+ID:1". Если вы его не нашли, создайте документ и добавьте его. Если вы все же найдете его, то удалите существующие поля и повторно добавьте поля с новыми данными. Делая это таким образом, вы также получаете еще одну проблему в том, что вам нужно будет знать, когда удалять документы, когда удаляются страницы.
При работе с Lucene я настоятельно советую вам скачать Luke
Google Code Archive - долгосрочное хранилище для хостинга проектов Google Code.[
^]
Это инструмент, который позволяет вам видеть, какие данные находятся в вашем индексе, просматривать документы, их поля, рейтинги, позволяет выполнять специальный поиск с помощью различных анализаторов и т. д. Вам понадобится java на вашей машине, чтобы запустить его, но он стоит на вес золота.