gpt4 book ai didi

elasticsearch - 我可以通过ElasticSearch Bulk Api中的查询进行更新吗?

转载 作者:行者123 更新时间:2023-12-03 00:06:55 27 4
gpt4 key购买 nike

假设我有1000个用户,每个用户有50个文档(每个文档嵌入具有名称和电子邮件的用户对象),我需要为一组用户更新名称和电子邮件。

我想使用Bulk Api,但似乎bulk API仅支持“_id”作为参数。我想查询

例如:我想做,

POST _bulk
{ "update" : {"query" : {"terms": {"userId": "25"}}, "_type" : "comments", "_index" : "comments"} }
{ "doc" : {"user.name" : "new name"} }

代替
POST _bulk
{ "update" : {"_id" : "1", "_type" : "comments", "_index" : "comments"} }
{ "doc" : {"user.name" : "new name"} }

最佳答案

您可以将update by query API用于此目的:

POST comments/_update_by_query
{
"script": {
"inline": "ctx._source.user.name = newName",
"lang": "painless",
"params": {
"newName": "new name"
}
},
"query": {
"term": {
"userId": "25"
}
}
}

关于elasticsearch - 我可以通过ElasticSearch Bulk Api中的查询进行更新吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44327253/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com