I have managed to build an index in Solr which I can search on keyword, produce facets, query facets etc. This is all working great. I have implemented my search using a dismax query so it searches predetermined fields.
However, my results are coming back sorted by score which appears to be calculated by keyword relevancy only. I would like to adjust the score where fields have pre-determined values. I think I can do this with boost query and boost functions but the documentation here:
http://wiki.apache.org/solr/DisMaxRequestHandler#head-6862070cf279d9a09bdab971309135c7aea22fb3
Is not particularly helpful. I tried adding adding a bq argument to my search:
&bq=media:DVD^2
(yes, this is an index of films!) but I find when I start adding more and more:
&bq=media:DVD^2&bq=media:BLU-RAY^1.5
I find the negative results - e.g. films that are DVD but are not BLU-RAY get negatively affected in their score. In the end it all seems to even out and my score is as it was before i started boosting.
I must be doing this wrong and I wonder whether "boost function" comes in somewhere. Any ideas on how to correctly use boost?