我是Settings
solr5.1的新手 - 我现在正在玩,看看我是否可以让autosuggest工作。所以,背景是我有一个名为using
的核心,我使用以下内容将文档发布到此集合:
docs
..我已将文件编入索引。现在,我调整位于我的核心目录中的/bin/post -c docs /path/to/my/docs/*.pdf
以包含autosuggest。因此,借用here中的一些代码,我包含以下内容:
solrconfig.xml
现在,我这样做:
<searchComponent name="suggest" class="solr.SuggestComponent">
<lst name="suggester">
<str name="name">mySuggester</str>
<str name="lookupImpl">FuzzyLookupFactory</str>
<str name="storeDir">suggester_fuzzy_dir</str>
<!-- Substitute these for the two above for another "flavor"
<str name=”lookupImpl”>AnalyzingInfixLookupFactory</str>
<str name=”indexPath”>suggester_infix_dir</str>
-->
<str name="dictionaryImpl">DocumentDictionaryFactory</str>
<str name="field">_text_</str>
<str name="suggestAnalyzerFieldType">string</str>
<str name="buildOnStartup">false</str>
<str name="buildOnCommit">false</str>
</lst>
</searchComponent>
<requestHandler name="/suggest" class="solr.SearchHandler" startup="lazy" >
<lst name="defaults">
<str name="suggest">true</str>
<str name="suggest.count">10</str>
<str name="suggest.dictionary">mySuggester</str>
</lst>
<arr name="components">
<str>suggest</str>
</arr>
</requestHandler>
我似乎总是得到:
http://localhost:8983/solr/docs/suggest?suggest=true&suggest.build=true&suggest.dictionary=mySuggester&wt=json&suggest.q=mode
我不完全确定我做错了什么 - 我想知道在添加任何文档之前我是否应该修改{"responseHeader":
{"status":0,"QTime":19},
"command":"build","suggest":
{"mySuggester":
{"mode":
{"numFound":0,"suggestions":[]}
}
}
}
?或插入代码片段有什么问题?另外,我不确定这行:
solrconfig.xml
是对的。我读到不应该使用<str name="suggestAnalyzerFieldType">string</str>
- 但是我再次看到使用它的solr文档。
我也试过here的代码,但它似乎给了我相同的结果 - 即没有建议的单词。
对此的任何帮助都会很棒。
更新:#01:
我最近一直在阅读solr的某些功能需要string
才能正常工作。我现在想知道这是否适用于stored=true
。那么,是否需要将Suggester
中的text
字段转为solr.xml
?