我正在solr中使用過去的搜索進行自動建議功能。 Synonyms.txt包含一個常見的拼寫錯誤/拼寫錯誤等列表。它設置爲在索引上運行,並在管理員中使用anaysis工具,我可以看到它工作正常 - 但它似乎不適用於實時數據。這似乎並沒有這樣的情況(即使分析工具,說那是什麼 -solr同義詞不被解析
Field type :
<field name="suggest_ngrams" type="text_ngram" indexed="true" stored="false" multiValued="true" />
Schema:
<fieldType name="text_ngram" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords_en.txt" enablePositionIncrement="true"/>
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="false"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="15" side="front"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords_en.txt" enablePositionIncrement="true"/>
</analyzer>
and an example of synonyms.txt
watch, watches, watche, watchs => watch
所以在索引時間我希望「watche」與「看」來代替它在做什麼。
要清楚,如果我查詢的Solr(q = WATC)短語「watche」出現在結果
任何意見或洞察力,將不勝感激,因爲我覺得一切都設置correctl Ÿ
感謝
那之前,應用過濾器的數據是什麼林不知道 - 我的理解它的同義詞過濾器應替換爲「watche」 '看',當它做索引。所以'watche'根本不應該在索引中,不應該被返回到結果中。 –
#顯式映射匹配「=>」的LHS上的任何標記序列,並替換RHS上的所有替代方案。這些類型的映射 #ignore模式中的擴展參數。 #示例: i-pod,i pod => ipod, 海洋餅乾,海biscit => seabiscuit –
因此,我讀到的術語被替換,所以不應該出現在索引.... –