• 【ElasticSearch】批量操作 bulk


    【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"
  • 相关阅读:
    Spring-----<context:annotation-config/>
    Spring-----代码中使用注入的Properties配置属性
    Spring-----事务配置的五种方式
    读书汇总贴
    读书_2019年
    有道词典_每日一句_2019/08
    微信小程序 报错Failed to load image
    有道词典_每日一句_2019/07
    微信小程序 base64格式图片的显示及保存
    Mac版微信无法安装之始末
  • 原文地址:https://www.cnblogs.com/yangchongxing/p/13215104.html
Copyright © 2020-2023  润新知