Ответ 1
Есть ли способ сохранить индекс в ОЗУ вместо того, чтобы держать его на жестком диске?
Используя RAMDirectory класс
SampleUsage здесь
Также из часто задаваемых вопросов Lucene
Как правило, для более быстрой производительности индексирования лучше всего использовать использование ОЗУ вместо количества документов и использовать как можно больший буфер памяти.
EDIT: RE: RamDirectory. Поскольку API говорит, что RamDirectory является Резидентной реализацией Directory-хранилища., он сохраняет только этот индекс в RAM, как указано в каталоге RAMDirecory
RE: Кэширование Насколько мне известно, Lucene кэширует результаты поиска с помощью фильтров PLS Look @CachingWrapperFilter и QueryWrapperFilter