lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chris Hostetter <hossman_luc...@fucit.org>
Subject Re: custom scorer in Solr
Date Mon, 14 Jun 2010 20:28:41 GMT

: Problem is that they want scores that make results fall in buckets:
: 
: *	Bucket 1: exact match on category (score = 4)
: *	Bucket 2: exact match on name (score = 3)
: *	Bucket 3: partial match on category (score = 2)
: *	Bucket 4: partial match on name (score = 1)
	...
: First thing we did was develop a custom similarity class that would
: return the correct score depending on the field and an exact or partial
: match.
	...
: The only problem now is that when a document matches on both the
: category and name the scores are added together.

what QParser are you using?  what does the resulting Query data structure 
look like?

I think with your custom Similarity class you might be able to achieve 
your goal using the DisMaxQParser w/o any other custom code -- just set 
your "qf=category name" (i'm assuming your Similarity already handles the 
relative weighting) and set the "tie=0" ... that will ensure that the 
final score only comes from the "Max" scoring field (ie: no tie breaking 
values fro mthe other fields)

if thta doesn't do what you want -- then your best bet is probably to 
write a custom QParser that generates *exactly* the query structure you 
want (likely using a DisjunctionMaxQuery) thta will give you the scores 
you want in conjunction with your similarity class.


-Hoss


Mime
View raw message