Я использую Solr Suggester для предоставления предложений на странице поиска нашего приложения. Но каждый запрос предложения Solr занимает слишком много времени, чтобы отправить ответ. Я пробовал с несколькими поисками Impl, такими как AnalyzingLookupFactory, AnalyzingInfixLookupFactory, FuzzyLookupFactory et c.
Ниже приведена моя конфигурация:
<searchComponent name="suggest" class="solr.SuggestComponent">
<lst name="suggester">
<str name="name">mySuggester</str>
<str name="lookupImpl">AnalyzingInfixLookupFactory</str>
<str name="dictionaryImpl">DocumentDictionaryFactory</str>
<str name="field">spell_suggest</str>
<str name="weightField">spell_suggest</str>
<str name="suggestAnalyzerFieldType">text_general</str>
<str name="buildOnStartup">false</str>
</lst>
<lst name="suggester">
<str name="name">altSuggester</str>
<str name="dictionaryImpl">DocumentDictionaryFactory</str>
<str name="lookupImpl">FuzzyLookupFactory</str>
<str name="field">spell_suggest</str>
<str name="weightField">spell_suggest</str>
<str name="suggestAnalyzerFieldType">text_general</str>
</lst>
</searchComponent>
<requestHandler name="/suggest" class="solr.SearchHandler" startup="lazy">
<lst name="defaults">
<!--<str name="suggest.dictionary">mySuggester</str> -->
<str name="suggest.dictionary">altSuggester</str>
<str name="suggest">true</str>
<str name="suggest.count">6</str>
<str name="spellcheck">true</str>
</lst>
<arr name="components">
<str>suggest</str>
</arr>
</requestHandler>
Для ответа, содержащего всего 42000 проиндексированных документов, требуется от 5 до 7 секунд, чтобы ответить. Это сильно влияет на функциональность приложения.
Вот мой запрос: http://<myIP>:8983/solr/mycollection/suggest?df=spell_suggest&suggest=true&suggest.build=true&q=Vendor
Пожалуйста, предложите, если мне нужно предоставить еще несколько конфигураций или мне нужно изменить существующие конфигурации для повышения производительности.
Спасибо!