有没有办法通过Elasticsearch 1.5中的查询来更新所有文档?

问题描述:

我们犯了一个错误,把口音的领域之一。所以,该字段包含é,我们想更新到e有没有办法通过Elasticsearch 1.5中的查询来更新所有文档?

我们使用Elasticsearch 1.5。是否有一个查询我们可以运行一次更新所有文档,或者是否需要查询所有文档并使用Elasticsearch库更新它们?

我们使用Node.js的

如果你正在运行ES 1.5,您可以安装插件update-by-query像这样:

bin/plugin -install com.yakaz.elasticsearch.plugins/elasticsearch-action-updatebyquery/2.5.1 

完成后,您可以重新启动ES服务器,运行以下查询:

curl -XPOST 'localhost:9200/your_index/_update_by_query' -d '{ 
    "query" : { 
     "match_all" : {} 
    }, 
    "script" : "ctx._source.field = 'foo'" 
}'