My bad, It's using the RamDirectory as a cache and a delegate directory that you pass in the constructor to do the disk operations, limiting the use of the RamDirectory to files that fit a certain size. So i guess the underlying Directory implementation will be whatever you choose it to be. I'd still try using a MMapDirectory and see if that improves performance. Also, regarding the pagination, you said you're retrieving 1000 documents at a time. Does that mean that if a query matches 10000 documents you want all of them retrieved ?
On Mon, Jun 2, 2014 at 12:51 PM, Jamie <ja...@mailarchiva.com> wrote: > I was under the impression that NRTCachingDirectory will instantiate an > MMapDirectory if a 64 bit platform is detected? Is this not the case? > > > On 2014/06/02, 2:09 PM, Tincu Gabriel wrote: > >> MMapDirectory will do the job for you. RamDirectory has a big warning in >> the class description stating that the performance will get killed by an >> index larger than a few hundred MB, and NRTCachingDirectory is a wrapper >> for RamDirectory and suitable for low update rates. MMap will use the >> system RAM to cache as much of the index it can and only hit disk when the >> portion of the index you're trying to access isn't cached. I'd put my >> money >> on switching directory implementations and see what kind of performance >> gains that brings to the table. >> >> >