zoukankan      html  css  js  c++  java
  • elasticsearch使用bulk实现批量操作

           本篇文章提供ES原生批量操作语法及使用bulk批量操作文档。文章依旧提供语法,具体实现大家根据语法,在对应处进行替换即可

    一、原生批量获取文档

    1、获取指定文档值(1

    语法:

    GET /_mget

    {

     “doce”:[

       {

         “_index”:”索引名1”,

         “_type”:”类型1”,

         “_id”:”id”

       },

       {

         “_index”:”索引名1”,

         “_type”:”类型1”,

         “_id”:”id”

       }

     ]

    }

    2、获取指定字段的值(2

    GET /_mget

    {

     “doce”:[

       {

         “_index”:”索引名1”,

         “_type”:”类型1”,

         “_id”:”id”,

         “_source”:”字段名”

       },

       {

         “_index”:”索引名1”,

         “_type”:”类型1”,

         “_id”:”id”,

         “_source”:[“字段名1”,”字段名2”]

       }

     ]

    }

    3、当索引和类型一致时获取多个文档

    GET /索引名/类型 _mget

    {

     “ids”:[“id1”,”id2”,”id3”]

    }

    二、使用bulk API实现批量操作

     Bulk的格式:

    {action:{metadata}}

    {requestbody}

    action:(行为)

    create :文档不存在时创建(存在时创建会报错)

    update:更新文档

    index:创建新文档或替换已有的文档

    delete:删除一个文档

    metadata:_index,_type,_id

    示例:

    {

    “delete”:{

         “_index”:”索引名”,

         “_type”:”类型”,

         “_id”:”id

    }

    }

    同时添加多个文档

    POST /索引名/类型/_bulk

    {“index”:{“_id”:1}}换行

    {“字段名1”:”值1”,”字段名2”:”值2”}

    {“index”:{“_id”:2}}换行

    {“字段名1”:”值1”,”字段名2”:”值2”}

    {“index”:{“_id”:3}}换行

    {“字段名1”:”值1”,”字段名2”:”值2”}

           以上代码是本人根据实际使用进行的提炼,若大家有所疑问或不同见解欢迎评论。本人博客主页:https://home.cnblogs.com/u/chenyuanbo/

    技术在于沟通交流!

  • 相关阅读:
    淡季买房注意细节 防售楼部“挂羊头卖狗肉”
    买房容易选房难 八大把关教您如何选好房
    socket发送接收字段采用Base64加密笔记
    深入理解JDK、JRE
    Socket读取JSONArray字串越界等相关问题
    android采用MediaPlayer监听EditText实现语音播报手机号码(阿拉伯数字)
    读取properties文件
    关于android客户端在线版本更新的总结(json源码)
    验证码
    base64举例
  • 原文地址:https://www.cnblogs.com/chenyuanbo/p/10138789.html
Copyright © 2011-2022 走看看