lucenenet-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Robert Stewart <>
Subject [Lucene.Net] alternatives to FSDirectory for multi-threaded search performance
Date Thu, 16 Jun 2011 14:17:16 GMT
What are the recommended best practices for using FSDirectory vs. RamDirectory, etc. for use
in multi-threaded search?

In a previous version of Lucene.Net (1.9) I used a modified FSDirectory implementation which
used a pool of open FileStream objects for each segment file, and handed them out in round-robin
fashion from the Clone() method.  That way multiple threads could read most segment files
in parallel.  It definitely increased multithreaded search performance quite a bit.  My indexes
are quite large (100+ million docs) and I can not load entire segments in to RAM using RamDirectory.

My question is what is the best practice here?  Is using a pool of descriptors as described
above the best idea?

View raw message