私はElasticsearch 2.x.xで自動補完サービスを構築しました。私の自動完成可能な値の1つは "3M"です。私はAUTOにあいまいさを設定したと私のマッピングは単にデフォルトです:Elasticsearch SuggestResponseが数字の文字列で間違っている
"mapping": {
"type": "completion",
"analyzer": "simple",
"payloads": false,
"preserve_separators": true,
"preserve_position_increments": true,
"max_input_length": 50
}
this documentationに基づきアナライザはシンプルであるべき、ぼやけAUTOがMAX 2スペルミスで意味します。
「1000000M」と入力すると、1000000と3が2つのスペルミスの制限を超えていますが、「3M」は自動的に完了します。
Elasticは1000000を認識していますが、3は両方とも数字で、私は{数字} Mを探していますか?
数字が実際の文字列のスペルエラーとして動作するようにしたいと思います。これは推奨動作ではないためです。
ファジーネスをZEROに設定しても、1000000Mから3Mに修正されます。