マッピング "キーワード"でいくつかのフィールドを保存しています。しかし、それらは大文字小文字の区別があります。この問題を解決するには弾性検索キーワードと小文字と集約
、このようなマッピング
{
"properties": {
"field": {
"type": "string",
"analyzer": "keyword_lowercase"
}
}
}
と
{
"index": {
"analysis": {
"analyzer": {
"keyword_lowercase": {
"tokenizer": "keyword",
"filter": [
"lowercase"
]
}
}
}
}
}
として、アナライザを使用することが可能である。しかし、その後用語の集計では動作しません。
原因:java.lang.IllegalArgumentException:フィールドデータは、デフォルトでは無効になっています。逆インデックスを反転してメモリにフィールドデータをロードするには、[a]にfielddata = trueを設定します。ただし、これは大きなメモリを使用する可能性があることに注意してください。
マッピングタイプ=キーワードで動作しますが、タイプ=キーワードではアナライザーが表示されません。
小文字のキーワードとしてインデックスを作成する方法はありますが、fielddata = trueを設定せずに集計を使用できるようにするにはどうすればよいですか?
感謝を行ってもいいです、それは実験 – J2B
「実験」は、そうでない場合は、「私たちを責めないでと言って別の方法でだから、彼らはそれを維持願っていますバグのない "とは言いますが、心配する必要はありません。 – Val
ありがとう!しかし、どのように機能の作業を強調表示できますか? – Daviddd