Anjana, maybe I don't understand you question correctly but what you want to do is a spell suggestion kind of thing on terms in the index, right? You try to use prefix query to display those terms as an auto-completion?! So I assume that what you do is run a query and then get the possible terms from the stored values?!
If I understand you correctly, wouldn't it be easier to just iterate the first n terms starting with your prefix? That should be quite fast and easy to implement if that would fit your requirements. simon On Fri, Nov 13, 2009 at 2:50 PM, Anjana Sarkar <anjana...@gmail.com> wrote: > 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