How to achieve a simpler SOLR scoring
this one is for dismax query type, I haven’t test for the normal one.
solrconfig.xml:
- tie=1.0 (make it sum game)
schema.xml:
- add omitNorms=”true” on fields you use in qf
Now you will have less thing to worry. Scoring will only depend on idf, tf, and everything else but fieldNorm. fieldNorm will always be 1.
<str name="id=214950,internal_docid=112150">
1.1009237 = (MATCH) sum of:
1.1009237 = (MATCH) max plus 1.0 times others of:
0.90732294 = (MATCH) weight(company_name:doctor^10.0 in 112150), product of:
0.097192064 = queryWeight(company_name:doctor^10.0), product of:
10.0 = boost
9.335361 = idf(docFreq=36)
0.0010411174 = queryNorm
9.335361 = (MATCH) fieldWeight(company_name:doctor in 112150), product of:
1.0 = tf(termFreq(company_name:doctor)=1)
9.335361 = idf(docFreq=36)
1.0 = fieldNorm(field=company_name, doc=112150)
0.19360073 = (MATCH) weight(full_classification:doctor^8.0 in 112150), product of:
0.040155806 = queryWeight(full_classification:doctor^8.0), product of:
8.0 = boost
4.821239 = idf(docFreq=3377)
0.0010411174 = queryNorm
4.821239 = (MATCH) fieldWeight(full_classification:doctor in 112150), product of:
1.0 = tf(termFreq(full_classification:doctor)=1)
4.821239 = idf(docFreq=3377)
1.0 = fieldNorm(field=full_classification, doc=112150)
</str><str name="id=212332,internal_docid=109538">
0.90732294 = (MATCH) sum of:
0.90732294 = (MATCH) max plus 1.0 times others of:
0.90732294 = (MATCH) weight(company_name:doctor^10.0 in 109538), product of:
0.097192064 = queryWeight(company_name:doctor^10.0), product of:
10.0 = boost
9.335361 = idf(docFreq=36)
0.0010411174 = queryNorm
9.335361 = (MATCH) fieldWeight(company_name:doctor in 109538), product of:
1.0 = tf(termFreq(company_name:doctor)=1)
9.335361 = idf(docFreq=36)
1.0 = fieldNorm(field=company_name, doc=109538)
</str>