Elasticsearch - 更新 key 而不是 id

标签 elasticsearch

我在 elasticsearch 中索引了需要更新的文档。

问题是我在更新时不知道文档的 Elasticsearch ID。我有一个唯一的 key (比如电子邮件地址)来标识每个文档 - 但更新 API 需要 Elasticsearch ID。

我是否需要先查询每个文档并在更新之前获取 elasticsearch id?听起来非常低效。更新在 20,000,000 个文档索引中以 100,000 个批处理为单位。

最佳答案

对于 Elasticsearch ,有查询机制没有更新 :

Updating a field in all records in elasticsearch .

您可以使用 _bulk api 有效地更新多个文档。

关于Elasticsearch - 更新 key 而不是 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31307199/

相关文章:

elasticsearch - 为Elasticsearch定义合并策略参数

具有特定时间范围的 Elasticsearch 日期直方图聚合

rest - 获取Kibana 5.6搜索结果的REST/cURL表示形式

json - 当输入JSON具有 “_source”字段时,ES没有结果

elasticsearch - 首先使用ElasticSearch按术语列表排序

scala - 从Scala中的 Elasticsearch 检索数据/值

spring - Spring Data 是否支持 Elasticsearch 5.x?

stored-procedures - ElasticSearch存储过程

Elasticsearch 5.0.2 ignore_above 给出不受支持的参数错误

elasticsearch - 搜索一个值中包含的 ElasticSearch 字段