ElasticSearch批量api中的其他操作参数在哪里?

时间:2019-02-26 01:16:28

标签: elasticsearch

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

elasticSearch索引api允许我指定OpType以不更新记录: https://www.elastic.co/guide/en/elasticsearch/client/javascript-api/current/api-reference.html#api-index 例如cabal-version: >= 1.12 name: gensop version: 0.1 build-type: Simple author: scooter-me-fecit description: No description. license: GPL-3 executable gensop default-language: Haskell2010 main-is: Main.hs build-depends: base, containers, bytestring, generics-sop, syb, text, unordered-containers default-extensions: OverloadedStrings, FlexibleInstances ghc-options: -Wall

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

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

它是否在元数据字段中,因此如下所示?

[opType=create]

还是我把它放在其他地方?

1 个答案:

答案 0 :(得分:2)

如您所引用的链接中所述,如果要使用与opType: create相同的语义,则需要使用create命令而不是index

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