Получу ли я улучшение производительности в миграции lucene index с версии v3 до последней версии v7? - PullRequest
0 голосов
/ 05 июня 2018

Наше приложение индексирует книги.Когда мы индексируем, размер на диске составляет около 1 ГБ.Когда мы ищем, это занимает около 12-18 секунд.

Это приложение было построено с использованием Lucene 3.xx. Получу ли я повышение производительности при переходе на Lucene 7.xx?

Я спрашиваю, потому что приложение очень большое и разделяет этот фрагмент.Функциональность - это очень большая задача, поэтому мне нужна помощь опытных людей.

Я также вижу много классов, которые используются в коде и недоступны в Lucene-7.Как я могу мигрировать?Нужно ли выполнять инкрементную миграцию, например, v3 -> v4 -> v5 -> v6 -> v7?

1 Ответ

0 голосов
/ 01 февраля 2019

Могу ли я увидеть улучшение производительности при переходе на Lucene 7.0

Невозможно сказать наверняка, но, скорее всего, вы это сделаете.Со времени Lucene 3 произошли значительные улучшения производительности. Вы можете просмотреть тесты Lucene , где, прокручивая назад, вы увидите улучшения для большинства из них начиная с версии 3.

Будь то достаточно улучшения - это другой вопрос.Первое, на что вам следует обратить внимание, это если вы используете запросы, которые обычно неэффективны, и как вы могли бы сделать это лучше.Если вы используете много лидирующих подстановочных запросов, более новая версия Lucene не собирается волшебным образом спасать вас от вас.

Как мне мигрировать?

За 7 лет, прошедших после Lucene 3, многое изменилось, изменилось количество читателей или писателей, даже Документы и Поля не работают совершенно одинаково!Лучше всего ознакомиться с Руководствами по миграции, в которых указаны изменения, которые могут нарушить ваш код, и что с ними делать:

Нужно ли выполнять пошаговую миграцию

При таком количестве версий, я бы предпочел переиндексировать, если это возможно, но если это не вариант, да, вы будетенеобходимо обновить индекс по одной основной версии за раз.Для этого вам понадобится инструмент командной строки IndexUpgrader , который обновляется только с последней основной версии.Итак, да, вам нужно будет загрузить lucene 4, запустить IndexUpgrader, чтобы получить индекс 4.0, затем повторить с Lucene 5 и т. Д.

...