Предположим, я хотел бы проиндексировать документ
PUT twitter/_doc/1
{
"user" : "kimchy",
"any" : "thing"
}
GET twitter/_doc/1
, который возвращает
{
"_index": "twitter",
"_type": "_doc",
"_id": "1",
"_version": 3,
"found": true,
"_source": {
"user": "kimchy",
"any": "thing"
}
}
, но затем я бы хотел обновить документ (без полной перезаписи исходного)[обратите внимание на разницу в полях]
PUT twitter/_doc/1
{
"user" : "kimchy",
"some" : "thing"
}
GET twitter/_doc/1
{
"_index": "twitter",
"_type": "_doc",
"_id": "1",
"_version": 6,
"found": true,
"_source": {
"user": "kimchy",
"some": "thing"
}
}
, но ES перезаписывает весь документ.Можно ли как-нибудь оставить пропущенные поля нетронутыми?
В идеале я хотел бы получить
"_source": {
"user": "kimchy",
"any" : "thing",
"some": "thing"
}
Спасибо!