2016-11-02 9 views
0

私はSolrの自動提案でコレクションを作成したいと思っています。私は一言の単語を試してみましたが、 "Barack"と入力すると "Barack"、 "Barack Obama"、 "Barack Obama presidentアメリカの "。複数の単語の自動提案のためのsolr(4.10)の設定方法?

私は6つのフィールドを持っていますが、このフィールドに従ってschema.xmlとsolr config.xmlを設定する方法は1つのフィールド(つまりContent ...)の提案のみです。私はたくさんの例を試しましたが、それは私にとってはうまくいかなかったのです! これには簡単な解決策がありますか?どんな助けでも感謝します! ありがとうございました。

おかげでアミットは、応答のために、私はまたことを試してみましたが、私は私のschema.xmlは、私は私のコンテンツフィールド の提案をしたい、このようなもので、私のSolrの設定が以下の通りである を探していたものを手に入れるdidntの!

<field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" /> 
    <field name="Content" type="suggest_phrase" indexed="true" stored="true" /> 
    <field name="Lang" type="string" indexed="true" stored="true" /> 
    <field name="PubDate" type="tdate" indexed="true" stored="true" /> 
    <field name="Section" type="string" indexed="true" stored="true" /> 
    <field name="PaperName" type="string" indexed="true" stored="true" /> 
    <field name="Page_No" type="tint" indexed="true" stored="true" /> 

    <fieldType name="suggest_phrase" class="solr.TextField" positionIncrementGap="100" multiValued="true"> 
    <analyzer> 
     <tokenizer class="solr.KeywordTokenizerFactory" /> 
     <filter class="solr.LowerCaseFilterFactory" /> 
    </analyzer> 


    <!-- search content --> 
    <searchComponent name="suggest_phrase" class="solr.SpellCheckComponent"> 
    <lst name="spellchecker"> 
     <str name="name">suggest_phrase</str> 
     <str name="classname">org.apache.solr.spelling.suggest.Suggester</str> 
     <str name="lookupImpl">org.apache.solr.spelling.suggest.fst.FSTLookup</str> 
     <str name="field">suggest_phrase</str> 
     <str name="buildOnCommit">true</str> 
    </lst> 
</searchComponent> 
<requestHandler class="org.apache.solr.handler.component.SearchHandler" name="/suggest_phrase"> 
    <lst name="defaults"> 
     <str name="spellcheck">true</str> 
     <str name="spellcheck.dictionary">suggest_phrase</str> 
     <str name="spellcheck.onlyMorePopular">true</str> 
     <str name="spellcheck.count">10</str> 
     <str name="spellcheck.collate">false</str> 
    </lst> 
    <arr name="components"> 
     <str>suggest_phrase</str> 
    </arr> 
</requestHandler> 

答えて

0

あなたは自動提案に使用しているフィールドに屋根板を使用できます。

+0

こんにちはアマン、私はShinglefilterfactoryで試してみたが、私が探していたものを手に入れていない! 他の解決策 –

関連する問題