Более быстрый поиск в Lucene - Является там способом сохранить целый индекс в RAM?

Когда элементы известны впереди и не изменятся, перечисление является соответствующим.

, Если элементы могут измениться во время времени выполнения, используйте Набор.

21
задан Amber 18 August 2009 в 11:59
поделиться

3 ответа

Есть ли способ сохранить индекс в ОЗУ вместо того, чтобы хранить его на жестком диске?

Используя здесь RAMDirectory класс

SampleUsage

Также из часто задаваемых вопросов Lucene

ImproveSearchingSpeed ​​

Как правило, для повышения производительности индексации лучше выполнять очистку по использованию ОЗУ, а не по количеству документов, и использовать как можно больший буфер ОЗУ.

Также проверьте этот вопрос:

РЕДАКТИРОВАТЬ: RE: RamDirectory , поскольку API говорит, что RamDirectory является реализацией каталога, резидентного в памяти. , он сохраняет только те индексы в ОЗУ, как указано в каталоге RAMDirecory

RE: Кэширование Насколько мне известно, Lucene кэширует результаты поиска с помощью фильтров, пожалуйста, посмотрите @ CachingWrapperFilter и QueryWrapperFilter

18
ответ дан 29 November 2019 в 21:54
поделиться

Ознакомьтесь с документацией RAMDirectory . Вот базовый пример использования . Это будет работать, только если индекс достаточно мал.

1
ответ дан 29 November 2019 в 21:54
поделиться

RAM-диск может быть решением этой проблемы. Мини-HOWTO доступно на http://www.vanemery.com/Linux/Ramdisk/ramdisk.html . Установите RAM-диск в качестве индексного каталога, и все готово.

1
ответ дан 29 November 2019 в 21:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: