Nic*_*ico 4 search elasticsearch
我是新来的。
我在一个索引中有大约 20 万个文档,所有文档都具有相同的类型。我想在每个文档中再添加一个字段“类别”(这是一个关键字字符串)。
有没有方便的方法来实现这一目标?我知道通常一个查询只能得到 10000 个文件
非常感谢
小智 8
POST index_name/_update_by_query
{
"script": {
"inline": "ctx._source.field_name = \"value\"",
"lang": "painless"
}
}
Run Code Online (Sandbox Code Playgroud)
迟到了,但希望这可以帮助你。
您可以使用_update_by_query API。
请注意,您可以使用请求的查询部分定义更新条件。如果您只需要更新索引中的所有文档,则只需删除查询部分即可。
POST my-index-000001/_update_by_query
{
"script": {
"source": "ctx._source.count++",
"lang": "painless"
},
"query": {
"term": {
"user.id": "kimchy"
}
}
}
Run Code Online (Sandbox Code Playgroud)
注意:从 6.x 开始,inline里面的选项就被贬值了。_update_by_query你应该改用source。