solr返回部分匹配结果
这里的“部分匹配”,是指返回的结果没有完全匹配所有搜索的关键词。
DisMaxQParserPluign里有一个参数mm(Minimum 'should' match),设置整个搜索关键词中最小需要匹配的数量。这里给出例子
- "2" : 无论关键词一共有多少,doc最少需要匹配2个
- "75%" : doc最少需要匹配75%的关键词,关键词个数向下取整。
- "2<-25%" : 关键词少于3个的时候,doc需要全部匹配;大于等于3个的时候,doc最少需要匹配75%
- "2<-1 5<80%" : 关键词少于3个的时候,需要全部匹配;3-5个的时候,只能有一个不匹配;大于5个的时候,最少需要匹配80%
默认mm为100%,也就是所有关键词都必须有匹配。即使在schema.xml里设置operator为OR,也要受到mm的限制,也就是无法全部匹配关键词的doc都不在结果集中。
参考文档:http://wiki.apache.org/solr/DisMaxQParserPlugin#mm_.28Minimum_.27Should.27_Match.29
posted on 2011-09-21 13:39 sleepingfire 阅读(582) 评论(0) 编辑 收藏 举报