ElasticSearchでICU Transliteratorを使う

More than 5 years have passed since last update.

ドキュメントに記載はされてないのですが、elastic-analysis-icuから利用可能.

今回は、カタカナ→ひらがなの変換をするフィルタを設定してみます


  • elasticsearch-analysis-icuをインストトールする

bin/plugin -install elasticsearch/elasticsearch-analysis-icu/2.0.0


  • フィルタ・アナライザを登録する(アナライザは用途に応じて任意に)

curl -XPUT localhost:9200/test/ --data-binary @setting.json


setting.json

{

"settings": {
"analysis": {
"analyzer": {
"test_analyzer": {
"tokenizer": "keyword",
"filter" : ["kana_filter"]
}
},
"filter": {
"kana_filter" : {
"type" : "icu_transform",
"id": "Katakana-Hiragana"
}
}
}
}
}


  • 動作確認

curl -XGET 'localhost:9200/test/_analyze?analyzer=test_analyzer&pretty' -d 'カレーライス'

{
"tokens" : [ {
"token" : "かれえらいす",
"start_offset" : 0,
"end_offset" : 6,
"type" : "word",
"position" : 1
} ]
}