のオブジェクトの一部だけにインデックスを付けることはできますelasticsearch
か?
例:
$ curl -XPUT 'http://localhost:9200/test/item/1' -d '
{
"record": {
"city": "London",
"contact": "Some person name"
}
}
$ curl -XPUT 'http://localhost:9200/test/item/2' -d '
{
"record": {
"city": "London",
"contact": { "phone": "some-phone-number", "name": "Other person's name" }
}
}
$ curl -XPUT 'http://localhost:9200/test/item/3' -d '
{
"record": {
"city": "Oslo",
"headquarters": { "phone": "some-other-phone-number",
"address": "some address" }
}
}
都市名のみを検索可能にし、オブジェクトの残りの部分はすべて索引付けせず、完全に任意のままにしたいと考えています。たとえば、一部のフィールドは、オブジェクトからオブジェクトへとタイプを変更できます。そのような振る舞いを可能にするマッピングを書くことは可能ですか?
アップデート
私の最終的な解決策は次のようになります。
{
"test": {
"dynamic": "false",
"properties": {
"name": {
"type": "string"
}
}
}
}
マッピングの最下位レベルに "dynamic": "false" を追加すると、期待どおりに機能します。