Faster search in Lucene - Is there a way to keep the whole index in RAM?

elif picture elif · Aug 18, 2009 · Viewed 13.4k times · Source

Is there a way of keeping the index in RAM instead of keeping it on the hard disk?

We want to make searching faster.

Answer

Narayan picture Narayan · Aug 18, 2009

Is there a way of keeping the index in RAM instead of keeping it on the hard disk?

Using the RAMDirectory class

SampleUsage here

Also from the Lucene FAQs

ImproveSearchingSpeed

Generally for faster indexing performance it's best to flush by RAM usage instead of document count and use as large a RAM buffer as you can.

Also check this question:

EDIT: RE: RamDirectory, As the API says RamDirectory is A memory-resident Directory implementation., it keeps only those index in RAM as specified by directory RAMDirecory

RE:Caching In my knowledge, Lucene caches search results by means of filters pls look @ CachingWrapperFilter and QueryWrapperFilter