在 elasticsearch 中更新过滤后的文档
Updating filtered documents in elasticsearch
我想知道是否有办法在过滤掉elasticsearch文档后更新它们。
假设我有一个包含以下文档的用户集合:
[
{ "name":"u1","age":23},
{ "name":"u2","age":31},
{ "name":"u3","age":27},
{ "name":"u4","age":33}
]
现在我需要做的是更新所有年龄在 30 岁以上的用户的姓名。
看了很多文档,在google上搜索了几个小时,包括下面的文档
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/_updating_documents.html
我找不到办法。因此,如果我们查看文档,我们会提供文档的 ID,因此它不符合我的需要。有没有办法在 Elasticsearch 中做这种事情?
根据您提供的link:
Note that as of this writing, updates can only be performed on a
single document at a time. In the future, Elasticsearch will provide
the ability to update multiple documents given a query condition (like
an SQL UPDATE-WHERE statement).
因此,目前不支持此功能。不过你可以考虑看看这个插件:https://github.com/yakaz/elasticsearch-action-updatebyquery/.
我想知道是否有办法在过滤掉elasticsearch文档后更新它们。
假设我有一个包含以下文档的用户集合:
[
{ "name":"u1","age":23},
{ "name":"u2","age":31},
{ "name":"u3","age":27},
{ "name":"u4","age":33}
]
现在我需要做的是更新所有年龄在 30 岁以上的用户的姓名。 看了很多文档,在google上搜索了几个小时,包括下面的文档 http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/_updating_documents.html
我找不到办法。因此,如果我们查看文档,我们会提供文档的 ID,因此它不符合我的需要。有没有办法在 Elasticsearch 中做这种事情?
根据您提供的link:
Note that as of this writing, updates can only be performed on a single document at a time. In the future, Elasticsearch will provide the ability to update multiple documents given a query condition (like an SQL UPDATE-WHERE statement).
因此,目前不支持此功能。不过你可以考虑看看这个插件:https://github.com/yakaz/elasticsearch-action-updatebyquery/.