Hello, Also keep in mind prefix queries are not the cheapest. Plug: We've seen people use this successfully: http://www.sematext.com/products/autocomplete/index.html I believe somebody is trying this out with a set of 1B suggestions. The demo at http://www.sematext.com/demo/ac/index.html searches 6M Wikipedia titles with a a *tiny* JVM heap.
Otis ----- Original Message ---- > From: Anjana Sarkar <anjana...@gmail.com> > To: java-user@lucene.apache.org > Sent: Fri, November 13, 2009 8:50:38 AM > Subject: Prefix Query for autocomplete - TooManyClauses > > We are using lucene for one our projects here and has been working very well > for last 2 years. > The new requirement is to use it for autocomplete. Here , queries like a* or > ab* pose a problem. > I have set BooleanQuery.setMaxClauseCount( Integer.MAX_VALUE ) to get around > the TooManyClausesException. > The issue now is performance is not acceptable. It takes about 3 secs for a* > query to return results. > I have 250,000 documents , each document is 5 - 15 words in the indexed > field and am using StandardAnalyzer. I have tried using a filter, > since in this case, I am only interested in documents with a boost higher > than a certain number. I had > the boost value as a separate lucene indexed field so I can filter on it. > I realized that the filtering is only applied after the boolean query is > prepared and scored, so there is no performance benefit with using that > approach. > I cannot use a ConstantScoreQuery as I need the top n matches for the query. > Any suggestions on how I can get around this issue will be highly > appreciated. --------------------------------------------------------------------- To unsubscribe, e-mail: java-user-unsubscr...@lucene.apache.org For additional commands, e-mail: java-user-h...@lucene.apache.org