Solr建议者从已删除的文档中返回条款

时间:2017-09-28 20:57:40

标签: solr solrcloud

我有一个SolrCloud设置,我正在测试建议组件。我在索引中有几百个文档。我不想要索引中的一些文档,因为它们包含乱码(它们是不正确地转换为文本的二进制文件)。我已经将它们从索引中删除了,但是他们的喋喋不休的话仍然出现在建议中。

我的建议配置如下:

<searchComponent name="suggest" class="solr.SuggestComponent">
    <lst name="suggester">
        <str name="name">fuzzySuggester</str>
        <str name="lookupImpl">FuzzyLookupFactory</str>
        <str name="dictionaryImpl">HighFrequencyDictionaryFactory</str>
        <str name="storeDir">suggester_fuzzy_dir</str>
        <str name="field">dictionary_text</str>
        <str name="suggestAnalyzerFieldType">phrase_suggest</str>
        <str name="exactMatchFirst">true</str>
        <float name="threshold">0.001</float>
        <str name="buildOnStartup">false</str>
        <str name="buildOnCommit">true</str>
    </lst>
</searchComponent>

<requestHandler name="/suggest" class="solr.SearchHandler" startup="lazy">
    <lst name="defaults">
        <str name="suggest">true</str>
        <str name="suggest.dictionary">fuzzySuggester</str>
        <str name="suggest.onlyMorePopular">true</str>
        <str name="suggest.count">5</str>
        <str name="suggest.collate">true</str>
    </lst>
    <arr name="components">
        <str>suggest</str>
    </arr>
</requestHandler>

请注意,buildOnCommit设置为true。我还尝试使用带有/suggest参数的suggest.build=true查询删除它们,但这没有效果。

是否还需要其他内容才能从字典中删除字词?

1 个答案:

答案 0 :(得分:1)

尽管在更新中使用了expungeDeletes=true,但已删除的文档仍然存在。优化删除了它们,似乎已从建议中删除了所有乱码术语。