Каковы различные способы оптимизации производительности Lucene?
Должен ли я использовать API кеширования для хранения моего поискового запроса lucene, чтобы я сохранил накладные расходы на создание запроса еще раз?
Каковы различные способы оптимизации производительности Lucene?
Должен ли я использовать API кеширования для хранения моего поискового запроса lucene, чтобы я сохранил накладные расходы на создание запроса еще раз?
Вы посмотрели
Совет оптимизации Lucene: повторное использование
Расширенное текстовое индексирование с Lucene
Следует ли оптимизировать индекс после инкрементных индексов в Lucene?
Краткие советы:
Чит. Используйте RAMDirectory, чтобы загрузить весь индекс в RAM. Впоследствии все быстро вспыхивает.:)
Здесь много мертвых ссылок.
Эти (несколько официальных) ресурсов, где я начну:
Я обнаружил, что лучший ответ на вопрос о производительности - это профайл. Рекомендации велики, но есть так много переменных, которые могут влиять на производительность, такую как размер вашего набора данных, типы запросов, которые вы делаете, типы данных и т.д.
Получить профилировщик Netbeans или что-то подобное и попробовать его разными способами. Используйте статьи, связанные с Митчем, но убедитесь, что вы действительно проверяете, что помогает, и что (часто удивительно) болит.
Существует также хорошая вероятность того, что любые различия в производительности, которые вы можете получить от Lucene, будут незначительными по сравнению с улучшением производительности вашего кода. Профилер также укажет на это.
Для 64-разрядных машин используйте MMapDirectory вместо RAMDirectory как очень хорошо объясненный здесь одним из основных коммиттеров Lucene.