I am implementing auto suggestion on Business Name. I
used BlendedInfixLookupFactory which worked in all my uses until I
encountered into this bug (https://issues.apache.org/jira/browse/SOLR-7865),
where suggest.count doesn't work in Solr 5.2.1. But, I can't upgrade
anytime soon. :(

I tried using AnalyzingInfixSuggester, but, I encountered couple of issues
with this. Can someone help me with these?

   1. This lookupImpl is returning duplicate business names (
   https://issues.apache.org/jira/browse/LUCENE-6336) in results (the data
   has duplicate business names) which isn't happening
   with BlendedInfixLookupFactory. I don't want duplicate values.
   2. Second one is, AnalyzingInfixSuggester is searching on all input
   keywords - For example, if am looking for "Apple Corporation", it is
   returning, "Apple Inc", "Apple Corporation", "Oracle Corporation",
   "Microsoft Corporation". I need the data with only "Apple Corporation".
   Again, this is working fine in BlendedInfixLookupFactory.

I don't want fuzzy searches, so, I am not using it.

Below are the respective configurations. The fields type uses Standard
Tokenizer.

          <lst name="suggester">
<str name="name">businessName_BIF</str>
<str name="lookupImpl">BlendedInfixLookupFactory</str>
<str name="dictionaryImpl">DocumentDictionaryFactory</str>
<str name="field">business_name</str>
<str name="buildOnCommit">true</str>
<str name="buildOnOptimize">true</str>
<str name="buildOnStartup">true</str>
<!--LookupImpl Specific properties -->
<str name="suggestAnalyzerFieldType">text_standard</str>
<str name="exactMatchFirst">true</str>
<str name="preserveSep">true</str>
<str name="preservePositionIncrements">true</str>
<str name="indexPath">suggest_test_business_name_bif</str>
<str name="minPrefixChars">0</str>
<str name="highlight">false</str>
<str name="blenderType">linear</str>
<str name="numFactor">10</str>
<!--DictionaryImpl Specific properties -->
<str name="weightField">revenues</str>
<str name="payloadField">id</str>
</lst>

          <lst name="suggester">
<str name="name">businessName_AIF</str>
<str name="lookupImpl">AnalyzingInfixLookupFactory</str>
<str name="dictionaryImpl">DocumentDictionaryFactory</str>
<str name="field">business_name</str>
<str name="buildOnCommit">true</str>
<str name="buildOnOptimize">true</str>
<str name="buildOnStartup">true</str>
<!--LookupImpl Specific properties -->
<str name="suggestAnalyzerFieldType">text_standard</str>
<str name="exactMatchFirst">true</str>
<str name="preserveSep">true</str>
<str name="preservePositionIncrements">true</str>
<str name="indexPath">suggest_test_business_name_aif</str>
<str name="minPrefixChars">0</str>
<str name="allTermsRequired">true</str>
<str name="highlight">false</str>
<!--DictionaryImpl Specific properties -->
<str name="weightField">revenues</str>
<str name="payloadField">id</str>
</lst>

Reply via email to