As I understand it, the bq parameter is a full Lucene query, but only used for 
ranking, not for selection. This is the complement of fq.

You can use weighting:  provider:fred^8

This will be affected by idf, so providers with fewer matches will have higher 
weight than those with more matches. This is a bother, but the idf-free 
approach requires Solr 4.0.

wunder

On Jan 17, 2013, at 10:31 PM, Shawn Heisey wrote:

> I did try the bq parameter.  Either I'm not using it correctly, or it's not 
> making a noticeable difference.  I was not able to find any good docs, 
> either.  Can you give me complete instructions in its use?  Can I control the 
> boost factor?  Is the boost additive or multiplicative?
> 
> For query elevation, don't you have to know in advance the query that a user 
> will send?  There's no way for me to know this - we want to be able to apply 
> the boost to arbitrary queries.
> 
> The source data comes from MySQL, and this is a seven-shard distributed index 
> with 74075200 documents as of a few minutes ago.  Although ExternalFileField 
> probably wouldn't be impossible, it is rather impractical.
> 
> Thanks,
> Shawn
> 
> On 1/17/2013 10:53 PM, Walter Underwood wrote:
>> Have you tried boost query?  bq=provider:fred
>> 
>> wunder
>> 
>> On Jan 17, 2013, at 9:08 PM, Jack Krupansky wrote:
>> 
>>> Start with "Query Elevation" and see if that helps:
>>> http://wiki.apache.org/solr/QueryElevationComponent
>>> 
>>> Index-time document boost is a possibility.
>>> 
>>> Maybe an ExternalFileField where every document could have a dynamic boost 
>>> value that you add with a boost function.
>>> 
>>> -- Jack Krupansky
>>> 
>>> -----Original Message----- From: Shawn Heisey
>>> Sent: Thursday, January 17, 2013 4:11 PM
>>> To: solr-user@lucene.apache.org
>>> Subject: Questions about boosting
>>> 
>>> I've been trying to figure this out on my own, but I've come up empty so
>>> far.  I need to boost documents from a certain provider.  The idea is
>>> that if any documents in a result match a separate query (like
>>> provider:bigbucks), I need to multiply the score by X.  It's important
>>> that the result set of the actual query is not changed, just the order.
> 




Reply via email to