【问题标题】:Do we have any option to perform bulk update in elastic search without specifying the document id我们是否有任何选项可以在不指定文档 ID 的情况下在弹性搜索中执行批量更新
【发布时间】:2014-03-28 07:17:29
【问题描述】:

我需要在不指定文档 ID 的情况下通过弹性搜索中的脚本进行批量更新。在“书籍”文档类型中,我有作者姓名。如果我重命名作者姓名,我需要使用脚本批量更新所有具有更新作者姓名的“书籍”。

我是否需要获取所有具有作者姓名的图书 ID 并更新所有图书?

BulkResponse bulkResponse = client.prepareBulk().add(client.prepareUpdate().setIndex("test").setType("books").setScript(script)).execute().actionGet();

通过使用上面的代码,我得到了以下异常

org.elasticsearch.action.ActionRequestValidationException: Validation Failed: 1: id is missing;

【问题讨论】:

    标签: elasticsearch


    【解决方案1】:

    您提到的是通过查询功能进行更新。它还没有上市,但由于需求量很大,我想它有一天会上市,你可以在 github 上的相关问题上获得战利品:https://github.com/elasticsearch/elasticsearch/issues/1607。 尚未实施的原因是它具有潜在危险,因为它可能导致大量更新和可能长时间运行的查询,此时无法停止。

    【讨论】:

      猜你喜欢
      • 2013-03-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-18
      • 1970-01-01
      • 2017-09-28
      • 2020-06-20
      • 1970-01-01
      相关资源
      最近更新 更多