Solr查询不返回预期值

时间:2012-09-13 07:39:43

标签: search solr

我们有一个像https://gist.github.com/118d17e93267123f4870

这样的solr配置

根据这一点,我正在用一个id来标记 Rhonda Byrne的秘密或圣经中的吸引力法则

然后我转到Solr分析工具,看看它将如何在此字段中编入索引。因此,索引分析是否具有给定值的字段类型返回类似的内容;

secret rhonda byrne law attraction bible

为了确保,我正在查询该标题的id字段,看看它是否在那里。正。

但是当我使用分析工具结果查询此索引时,我得不到任何结果。我的查询是这样的;

select?qf=title_stm&q="Secret+Rhonda+Byrne+Law+Attraction+Bible"&fl=id,title&defType=dismax

如注释中所示,该查询的调试输出在这里; https://gist.github.com/9b88fd6b5f043c90d539

1 个答案:

答案 0 :(得分:2)

问题在于: -

<filter class="solr.StopFilterFactory"
        ignoreCase="true"
        words="stopwords.txt"
        enablePositionIncrements="true"
        />

enablePositionIncrements在遇到停用词时增加位置。 因此,当您进行精确的词组匹配时,这将不匹配,因为索引标题的位置不会彼此相邻。

详细了解here

您应该禁用位置增量以便能够进行短语匹配。

<filter class="solr.StopFilterFactory"
        ignoreCase="true"
        words="stopwords.txt"
        enablePositionIncrements="false"
        />