lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Peter Keegan (JIRA)" <>
Subject [jira] Updated: (LUCENE-1017) BoostingTermQuery performance
Date Thu, 04 Oct 2007 17:23:50 GMT


Peter Keegan updated LUCENE-1017:

    Attachment: BoostingTermQuery.patch

Here is new version that traverses the term positions properly, I believe. It's only about
5% faster than the spans version, though. It's quite possible that this could be improved.
I'm using TermScorer to get me to the current doc and then setting TermPositions to the same
doc. Do you see any inefficiencies with the 'next' and 'skipTo' calls, particularly in 'getPayloads'?

> BoostingTermQuery performance
> -----------------------------
>                 Key: LUCENE-1017
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Search
>    Affects Versions: 2.2
>         Environment: all
>            Reporter: Peter Keegan
>         Attachments:, BoostingTermQuery.patch, termquery.patch
> I have been experimenting with payloads and BoostingTermQuery, which I think are excellent
additions to Lucene core. Currently, BoostingTermQuery extends SpanQuery. I would suggest
changing this class to extend TermQuery and refactor the current version to something like
> The reason is rooted in performance. In my testing, I compared query throughput using
TermQuery against 2 versions of BoostingTermQuery - the current one that extends SpanQuery
and one that extends TermQuery (which I've included, below). Here are the results (qps = queries
per second):
> TermQuery:    200 qps
> BoostingTermQuery (extends SpanQuery): 97 qps
> BoostingTermQuery (extends TermQuery): 130 qps
> Here is a version of BoostingTermQuery that extends TermQuery. I had to modify TermQuery
and TermScorer to make them public. A code review would be in order, and I would appreciate
your comments on this suggestion.
> Peter

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message