Elasticsearch-py具有查询的批量更新脚本?

时间:2019-04-23 15:22:25

标签: elasticsearch elasticsearch-py

我想通过脚本使用批量更新api,但是我想通过查询而不是ID来应用更新。

标准的批量更新有效负载看起来像这样-

{
  "_index": "users",
  "_type": "user",
  "_op_type": "update",
  "_id": "123",
  "script": { ... }
}

但是我想用一个查询代替_id属性-

{
  "_index": "users",
  "_type": "user",
  "_op_type": "update",
  "_query": {"query": {"range": {"age": {"gte": 30}}}},
  "script": { ... }
}

批量更新api是否可能?我是否需要通过脚本api请求将其作为标准更新运行?

1 个答案:

答案 0 :(得分:1)

我认为批量API无法做到这一点。我认为您真正需要的是update_by_query方法。有关更多详细信息,请查看documentation中的示例。