【问题标题】:Where do additional action paramters go in the ElasticSearch bulk api?ElasticSearch 批量 api 中的其他操作参数在哪里?
【发布时间】:2019-07-19 11:59:57
【问题描述】:

我正在为 elasticSearch 中的随机数据丢失构建一个数据回填脚本。我只想在备份的索引中添加丢失的文档;新版本可能已经存在,我不想丢失任何更新。

elasticSearch 索引 api 允许我指定 OpType 不更新记录: https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/api-reference.html#api-index 例如[opType=create]

我正在尝试使用批量 API 来提高效率:https://www.elastic.co/guide/en/elasticsearch/reference/6.6/docs-bulk.html

我不知道在批量 api 中放置“opType”的位置。

它是否在元数据字段中,所以它看起来像下面这样?

{ 'index': { '_index': indexName, '_type': 'data', '_id': <my Id>, 'opType': 'create' } } {data for item}

还是我把它放在别的地方?

【问题讨论】:

标签: elasticsearch


【解决方案1】:

正如您参考的链接中所解释的,如果您想使用与opType: create 相同的语义,您需要使用create 命令而不是index 一个:

 change this
      |
      v
{ 'create': { '_index': indexName, '_type': 'data', '_id': <my Id>} }
{ data for item }

【讨论】:

  • 谢谢,当我读到这篇文章时,我一定是在关注其他事情。
猜你喜欢
  • 2010-10-08
  • 2017-05-17
  • 1970-01-01
  • 2020-08-12
  • 2016-01-23
  • 1970-01-01
  • 1970-01-01
  • 2014-11-27
  • 1970-01-01
相关资源
最近更新 更多