Обновление индекса Lucene и производительность - PullRequest
2 голосов
/ 16 января 2009

Я работаю над сайтом портала вакансий и использую Lucene для поиска работы. Пользователи будут ежедневно публиковать несколько вакансий на нашем сайте. Мы должны быть уверены, что опубликованные вакансии будут доступны для поиска на сайте как можно скорее. В этом контексте, как мне обновить индекс Lucene, когда публикуется новая работа или когда редактируется существующая работа? Может ли обновление индекса lucene и поиск работать параллельно?

Кроме того, могу ли я узнать какие-либо советы / рекомендации по индексированию, оптимизации, производительности и т. Д. Lucene?

Ценю вашу помощь!

Спасибо!

Ответы [ 3 ]

4 голосов
/ 17 января 2009

Да, Lucene может выполнять поиск и запись в индекс одновременно, если в него записывается не более 1 IndexWriter. Если вы хотите, чтобы новые записи были видны как можно скорее, пусть IndexWriter часто вызывает функцию commit () (подробности см. В JavaDoc IndexWriter).

Эти вики-страницы также могут помочь:

ImproveIndexingSpeed ​​

ImproveSearchingSpeed ​​

0 голосов
/ 05 января 2010

Убедитесь, что вы создали новый IndexSearcher, поскольку любые добавления после создания IndexSearcher не видны этому экземпляру.

Лучшим подходом может быть повторное открытие IndexReader, если вы хотите повторно использовать тот же поисковик индекса.

0 голосов
/ 16 января 2009

Я использовал Lucene.Net на веб-сайте, похожем на то, что вы делаете. Да, вы можете делать живые индексы, обновляя, чтобы держать все в курсе? На какой платформе вы используете Lucene, .NET, Java?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...