Un RAMDirectory es más rápido, pero no se escriben en el disco. Solo existe mientras se ejecuta su programa, y debe crearse desde cero cada vez que se ejecuta su programa.
Si su índice es lo suficientemente pequeño como para caber cómodamente en la RAM, y no lo actualiza con frecuencia, puede mantener un índice en el disco y luego crear un directorio RAM a partir del constructor RAMDirectory(Directory dir)
. Las consultas deberían ser más rápidas que consultar el disco, una vez que hayas pagado la penalización de cargarlo. Pero mida la diferencia: si el índice puede caber en la memoria como un directorio RAM, también puede caber en la memoria caché del disco, por lo que es posible que no vea mucha diferencia.
Gracias por sus entradas ... ¿sé lo pequeño que es "lo suficientemente pequeño"? – user43498
Me imagino que es más pequeña que la RAM física disponible. –