使用中のElasticsearchバージョン: v5.5
Index templateで作成した expliciti mapping があり、多数のドキュメントを格納しています。
アプリケーション側での必要性から、既存ドキュメントに新しいプロパティを追加してインデックスしたところ、そのプロパティがmappingに追加されないようでした。
そこで質問なのですが、
- Explicit mappingに存在しないプロパティは動的に追加されていきますか
- されない場合は、明示的にPut Mapping APIでmappingを更新してからインデックスすればよいでしょうか
なお、上記ページで "Templates are only applied at index creation time. Changing a template will have no impact on existing indices. "(Index templateはindex作成時にのみ適用される)と上述のドキュメントにありましたので、Index templateは更新していません。
参考のため、以下のようなIndex templateがあり、
{
"template": "*.foo",
"settings": {
},
"mappings": {
"bar": {
"properties": {
"name": {
"type": "keyword"
}
}
}
}
}
この bar
に、新しいプロパティ hoge
を持つドキュメントを追加しようとしております。