我目前正在我的Solr架构中的文本字段上测试构面搜索,并注意到我的stopwords.txt文件中有大量结果。
我的架构目前正在使用文本数据类型的默认配置,我的印象是,如果正在使用“solr.StopFilterFactory”过滤器,则不会对停用词编制索引。
我希望有人可以对此有所了解,或者a)帮助我理解为什么停止词不适用于方面以及如何使用它,或者b)指出我正确的方向因此我的方面要求不要不会从停用词中返回单词。
谢谢!
答案 0 :(得分:1)
停用词确实适用于方面。换句话说:如果您要求使用停用词编制索引的字段,则不应在该构面中看到任何停用词。
我的猜测是你没有按照你的想法编制索引:你的schema.xml是错误的,或者你在一个不同于你想象的领域中建立索引。
我在这个领域使用facets并运作良好:
<fieldType name="text_ws_stop" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="stopwords_spanish.txt"
enablePositionIncrements="true"
/>
</analyzer>
</fieldType>
...
<field name="phrases" type="text_ws_stop" indexed="true" stored="true" required="false"/>