I need to execute a boolean query and get back just the bits of all the 
matching documents.  I do additional filtering (date ranges and entitlements) 
and then do my own sorting later on.  I know that using QueryFilter.Bits() will 
still compute scores for all matching documents.  I do not want to compute any 
scores.  For queries with large results (over 5 million), seems like it is 
somewhat slow , and maybe computing scores is taking some time.  I have 
10million document index, and for some very broad queries (4-5 million matching 
documents), seems like getting bits is slow (1.5 seconds).  I can do my own 
sorting of results for requested page in under 30 ms, since I have efficient 
cached permutations of sorting by various fields.  Is there a way given a 
BooleanQuery, to get matching bits without computing any scores internally?  I 
looked at ConstantScoreQuery but I believe it actually still computes scores 
since it gets bits from the underlying query anyway.  In fact I tested it and 
it is actually slower to use ConstantScoreQuery than not to.

Is it possible to use a custom similarity class to make scoring faster (by 
returning 0 values, etc)?




Thanks,
Bob

Reply via email to