[
https://issues.apache.org/jira/browse/SOLR-5831?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13989486#comment-13989486
]
Joel Bernstein commented on SOLR-5831:
--------------------------------------
Peter,
We can add a test with multiple segments by committing between updates in the
test case. The QueryResultCache issue I'lll have to review closer to see how
your using it.
Before I do that though...
I'm getting close to committing SOLR-5973. How would you feel about
contributing your score scaling Collector, instead of the PostFilter version.
There are some compelling reasons for this:
1) Response times as a function of hit count is much better with the Collector.
2) It would make a great first example of how to use the new pluggable
collector framework. Right now I don't have another example.
Let me know your thoughts.
Joel
> Scale score PostFilter
> ----------------------
>
> Key: SOLR-5831
> URL: https://issues.apache.org/jira/browse/SOLR-5831
> Project: Solr
> Issue Type: Improvement
> Components: search
> Affects Versions: 4.7
> Reporter: Peter Keegan
> Assignee: Joel Bernstein
> Priority: Minor
> Fix For: 4.9
>
> Attachments: SOLR-5831.patch, SOLR-5831.patch, SOLR-5831.patch,
> SOLR-5831.patch, TestScaleScoreQParserPlugin.patch
>
>
> The ScaleScoreQParserPlugin is a PostFilter that performs score scaling.
> This is an alternative to using a function query wrapping a scale() wrapping
> a query(). For example:
> select?qq={!edismax v='news' qf='title^2
> body'}&scaledQ=scale(product(query($qq),1),0,1)&q={!func}sum(product(0.75,$scaledQ),product(0.25,field(myfield)))&fq={!query
> v=$qq}
> The problem with this query is that it has to scale every hit. Usually, only
> the returned hits need to be scaled,
> but there may be use cases where the number of hits to be scaled is greater
> than the returned hit count,
> but less than or equal to the total hit count.
> Sample syntax:
> fq={!scalescore+l=0.0 u=1.0 maxscalehits=10000
> func=sum(product(sscore(),0.75),product(field(myfield),0.25))}
> l=0.0 u=1.0 //Scale scores to values between 0-1, inclusive
> maxscalehits=10000 //The maximum number of result scores to scale (-1 =
> all hits, 0 = results 'page' size)
> func=... //Apply the composite function to each hit. The
> scaled score value is accessed by the 'score()' value source
> All parameters are optional. The defaults are:
> l=0.0 u=1.0
> maxscalehits=0 (result window size)
> func=(null)
>
> Note: this patch is not complete, as it contains no test cases and may not
> conform
> to all the guidelines in http://wiki.apache.org/solr/HowToContribute.
>
> I would appreciate any feedback on the usability and implementation.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]