我在使用solr字段类型时遇到了麻烦,基本上我似乎无法通过类似愚蠢的术语来获得一个不错的分数。
以下是一个例子: 一家名为" Bagelkingdom"
的商店我有两个记录 - " Bagelkingdom"和" Bagel Kingdom"
当我搜索" Bagelkingdom"我得到14分,它返回" Bagel Kingdom"也是,但只有4分!
当我在" Bagel Kingdom"上进行反向搜索时我得到13分,然后又回归" Bagelkingdom",但这次得分为0.16。
我不会在这里粘贴我的所有架构文件 - 我已经尝试了很多不同的过滤器,而现在的做法并不多。
目前我的过滤器是;
<fieldType name="text_catenate" class="solr.TextField" positionIncrementGap="2" autoGeneratePhraseQueries="true">
<analyzer>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1"
generateNumberParts="1"
catenateWords="1"
catenateNumbers="1"
catenateAll="1"
splitOnCaseChange="0"
splitOnNumerics="0"
preserveOriginal="1"/>
<tokenizer class="solr.KeywordTokenizerFactory"/>
</analyzer>
</fieldType>