получить обновленные идентификаторы do c в API-интерфейсе Elasticsearch update_by_query - PullRequest
0 голосов
/ 20 июня 2020

Я использую следующий запрос для обновления некоторого веса, указанного в согласованных документах. Мне нужно получить список идентификаторов обновленных документов, но я не знаю, как это сделать?

    POST v1_shingle_analyzer/_update_by_query
{
    "script" : {
        "source": "ctx._source.content_completion.weight ++",
        "lang": "painless",
        "_source":true,
        "_source_includes":"_id"
    
    },
    "query": {
    "ids": {
      "values": ["ad22784cde0cecab176811ca9d77e7c2","dssdg784cde0cecab176811ca9fgdfg"]
     
    }
  }
}

1 Ответ

1 голос
/ 21 июня 2020

Ссылки это , этот ответ легенды , этот плагин и несколько сообщений форума ES, JIRA.

Краткий ответ:

Нет прямого способа сделать это. Возможно, вам придется снова запросить IDs, чтобы проверить, изменилось ли оно.

Подробный ответ:

Согласно документации , Ответ не имеет поля для возврата обновленного IDs.

Упомянутый плагин устарел / отказался от поддержки контекста согласно ссылке GitHub. Но я думаю, что

  1. вы можете посмотреть исходный код, чтобы выяснить способ обновления IDs, если это действительно важно.
  2. Я вижу здесь , что есть вариант ответа. Мы можем установить три значения. Но ничего не говорится о возвращении идентификаторов. В нем указаны параметры, связанные с тем, какой шард, какой тип обновляется, и т. Д. c .. Вы можете посмотреть это, если есть возможность настроить это.

Пожалуйста, дайте мне знать для получения дополнительной информации.

...