Im receiving a number of searches with many ORs so that the total number of matches is huge ( > 1 million) although only the first 20 results are required. Analysis shows most time is spent scoring the results. Now it seems to me if you sending a query with 10 OR components, documents that match most of the terms are bound to get a better score than a match that only matches one or two of the terms. So does lucene do any optimization to not bother working out the scores of the poor matches.

EDIT:Actually not sure the statement because if only term matches it could still get the highest score if the match was on the shortest term.

But can you see my point is there way to get lucene discount the less good matches without scoring them, or is there another approach. At the moment we allow the full lucene syntax and use QueryParser to parse a query and pass the resultant query to search unchanged (execpt for handling of numeric fields), should I be modifying the query somehow ?

thanks Paul


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

Reply via email to