Массовое действие для удаления значений в Elasticsearch - PullRequest
0 голосов
/ 27 июня 2018

У меня есть эти документы:

curl -XPOST -H "Content-Type: application/json" "http://localhost:9200/jerewan/product/_search?pretty" -d'
{
    {"index":{"_index":"test","_type":"product"}}
    {"id_product":"1", "categories":[1,2], "enums":[10,11,20,21] }
    {"index":{"_index":"test","_type":"product"}}
    {"id_product":"2", "categories":[1,2], "enums":[10,15,25,26] }
    {"index":{"_index":"test","_type":"product"}}
    {"id_product":"3", "categories":[2,3], "enums":[11,12,13,21,22,23,24] }

}

Мне нужно удалить числа 10 и 11 в поле перечислений во всех документах с массовым действием.

Итак, вывод будет после этого обновления:

 {"id_product":"1", "categories":[1,2], "enums":[20,21] }
 {"id_product":"2", "categories":[1,2], "enums":[15,25,26] }
 {"id_product":"3", "categories":[2,3], "enums":[12,13,21,22,23,24] 

Возможно ли это сделать?

1 Ответ

0 голосов
/ 27 июня 2018

Да, это возможно.

curl -XPOST -H "Content-Type: application/json" "http://localhost:9200/jerewan/product/_search?pretty" -d'
{
    { "update" : {"_id" : "1", "_type" : "product", "_index" : "test"} }
    { "doc" : {"enums" : [20,21]} }
    { "update" : {"_id" : "2", "_type" : "product", "_index" : "test"} }
    { "doc" : {"enums" : [15,25, 26]} }
}

с помощью этого вы можете обновить для дальнейшего чтения массового API

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...