首页 > 其他 > 详细

【ElasticSearch】批量操作 bulk

时间:2020-06-30 20:29:35      阅读:57      评论:0      收藏:0      [点我收藏+]

【ElasticSearch】批量操作 bulk

======================================================

1、索引 index

2、创建 create

3、index 和 create 区别

4、更新  update

5、删除 delete

======================================================

1、索引 index

创建新文档或替换已用文档

vim customer_index.json
{ "index" : { "_index" : "customer", "_id" : "1" } }
{ "name" : "Tom" }
{ "index" : { "_index" : "customer", "_id" : "2" } }
{ "name" : "Bob" }

curl -H "Content-Type: application/json" -XPOST "localhost:9200/customer/_bulk?pretty&refresh" --data-binary "@customer_index.json"
curl "localhost:9200/_cat/indices?v"

 

2、创建 create

文档不存在时创建

vim customer_create.json
{ "create" : { "_index" : "customer", "_id" : "3" } }
{ "name" : "Alice" }
{ "create" : { "_index" : "customer", "_id" : "4" } }
{ "name" : "Smith" }

curl -H "Content-Type: application/json" -XPOST "localhost:9200/customer/_bulk?pretty&refresh" --data-binary "@customer_create.json"
curl "localhost:9200/_cat/indices?v"

 

3、index 和 create 区别

如果数据存在,使用create操作失败,会提示文档已存在,使用index则可以成功执行

{
  "took" : 44,
  "errors" : true,
  "items" : [
    {
      "create" : {
        "_index" : "customer",
        "_type" : "_doc",
        "_id" : "1",
        "status" : 409,
        "error" : {
          "type" : "version_conflict_engine_exception",
          "reason" : "[1]: version conflict, document already exists (current version [1])",
          "index_uuid" : "SaYbL9kjSIKcXY1B73U9Rw",
          "shard" : "0",
          "index" : "customer"
        }
      }
    }
  ]
}

 

 

4、更新  update

vim customer_update.json
{ "update" : {"_id" : "1", "_index" : "customer"} }
{ "doc" : {"name" : "Tom Green"} }
{ "update" : {"_id" : "2", "_index" : "customer"} }
{ "doc" : {"name" : "Bob Smith"} }

curl -H "Content-Type: application/json" -XPOST "localhost:9200/customer/_bulk?pretty&refresh" --data-binary "@customer_update.json"
curl "localhost:9200/_cat/indices?v"

doc 是关键字保持

 

5、删除 delete

vim customer_delete.json
{ "delete" : { "_index" : "customer", "_id" : "1" } }
{ "delete" : { "_index" : "customer", "_id" : "2" } }

curl -H "Content-Type: application/json" -XPOST "localhost:9200/customer/_bulk?pretty&refresh" --data-binary "@customer_delete.json"
curl "localhost:9200/_cat/indices?v"

 

【ElasticSearch】批量操作 bulk

原文:https://www.cnblogs.com/yangchongxing/p/13215104.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!