私は次のようelasticsearchの設定があります。上記のelasticsearchで部分アクセント型キーワードを検索するにはどうすればよいですか?
"settings": {
"index":{
"analysis":{
"analyzer":{
"analyzer_keyword":{
"tokenizer":"keyword",
"filter":["lowercase", "asciifolding"]
}
}
}
}
}
を次のキーワードのため正常に動作します:
- ビヨンセ
- セリーヌ・ディオン
上記のデータはelasticsearchに保存されていますそれぞれbeyonce
とceline dion
となります。
アクセントなしでCeline
またはCeline Dion
を検索できますが、同じ結果が得られます。しかし、私がCéline
を検索する瞬間、私は結果を得られません。アクセント付きの部分的なキーワードを検索するためにelasticsearchを設定するにはどうすればよいですか?
照会本体は、次のようになります。
{
"track_scores": true,
"query": {
"bool": {
"must": [
{
"multi_match": {
"fields": ["name"],
"type": "phrase",
"query": "Céline"
}
}
]
}
}
}
とマッピングが
"mappings" : {
"artist" : {
"properties" : {
"name" : {
"type" : "string",
"fields" : {
"orig" : {
"type" : "string",
"index" : "not_analyzed"
},
"simple" : {
"type" : "string",
"analyzer" : "analyzer_keyword"
}
},
}
何あなたのクエリは次のように見えますか?検索しているフィールドのマッピングはどうですか? – eemp
@emp質問で更新されたクエリ本体 –
尋ねられたとおり、マッピングを提供していません。 –