lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Satuluri, Venu_Madhav" <Venu.Madhav.Satul...@deshaw.com>
Subject Improving search performance
Date Tue, 21 Mar 2006 12:18:26 GMT
Hi,

I am looking for ways to improve the performance of lucene search in our
app. Lucene performance is visibly slow when there are a lot of
documents to be returned (performance almost seems directly proportional
to the number of documents returned by Searcher). However, we show 20
results per page, so it seems to be a waste of time to get all, say,
60,000 documents when all I need are the nth 20 (i.e. if user requests
4th page of results, I just need documents 61 to 80).  I've tried using
the Searcher.search() method that returns TopFieldDocs. This method
works much faster than the ordinary Searcher.search() that returns all
the results. The trouble with this method is that I cant use it to get
an arbitrary portion of the results, I can only get the top few docs.

Our index size is around 50 MB. Its optimized every one hour. I have
tried a RAMDirectory, but even though using this improves performance by
upto 2 times, its not good enough. Also our index gets modified by
multiple processes so keeping the RAMDirectory up-to-date is a hassle.

Thanks,
Venu



---------------------------------------------------------------------
To unsubscribe, e-mail: java-user-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-user-help@lucene.apache.org


Mime
View raw message