2017-10-06 101 views
0

我使用以下設置來創建ES索引。在彈性搜索中取代原始字符串

"settings": { 
    "analysis" : { 
     "analyzer" : { 
      "my_analyzer" : { 
       "tokenizer" : "standard", 
       "filter" : ["standard", "lowercase", "my_stemmer"] 
      } 
     }, 
     "filter" : { 
      "my_stemmer" : { 
       "type" : "stemmer", 
       "name" : "english" 
      } 
     } 
    } 
} 

我注意到,雖然分析stemmer替換原詞的原始字符串。有沒有辦法索引原始字符串和詞幹標記呢?

回答

1

你的問題是有關stemmer token filter一個 「preserve_original」 參數:

你會發現 「preserve_original」 例如對於Word Delimiter Token Filter,但不適用於stemmer令牌過濾器。

如果您需要原始單詞,例如對於聚合,您可以將字段copy轉換爲具有適合分析儀的另一個字段。

如果您需要原始文件位於索引的相同位置,則必須包裝該詞幹分析器並將其構建爲plugin