kibana——es的批量操作

一·_mget:

  1.创建的索引如下:

   2.批量查询:

#查询两个
GET _mget
{
  "docs":[
    {
      "_index":"testdb",
      "_type":"ty2",
      "_id":1
    },
      {
      "_index":"testdb",
      "_type":"ty1",
      "_id":1
    }]
    
}
#指明索引查询
GET testdb/_mget
{
  "docs":[
    {
     
      "_type":"ty2",
      "_id":1
    },
      {
     
      "_type":"ty1",
      "_id":1
    }]
    
}

 

#指明索引和type
GET testdb/ty2/_mget
{
  "docs":[
    {
     
      "_id":1
    },
      {

      "_id":2
    }]
    
}

 

#获取指定索引和type下的
GET testdb/ty2/_mget
{
  "ids":[1,2]
}

 

二.bulk批量操作:

  增删改查:把所有操作发送到一个节点解析,在由节点分发,数据量一次也不能提交太多


注:每条数据第一行为索引及type和id,第二行为数据内容(共两行,不能分开写,否则无法解析,除delete(删除)只有一句之外
#
{"index":{"_index":"test","_type":"type1","_id":"1"}}
{"field1":"value1"}
#
{"create":{"_index":"test","_type":"type1","_id":"1"}}
{"field1":"value1"}
#区别
#index时会检查_version。如果插入时没有指定_version,那对于已有的doc,_version会递增,并对文档覆盖。插入时如果指定_version,如果与已有的文档_version不相等,则插入失败,如果相等则覆盖,_version递增。 #create时也会检查_version,但是对于已有的文档,不会创建新文档,即插入失败。 {"delete":{"_index":"test","_type":"type1","_id":"1"}} # {"create":{"_index":"test","_type":"type1","_id":"1"}} {"docs":{"field1":"value2"}}

 

#添加案列
POST _bulk
{"index":{"_index":"lagou","_type":"job1","_id":"1"}}
{"title":"haha","salary":"2"}
{"index":{"_index":"lagou","_type":"job2","_id":"2"}}
{"title":"haha","salary":"100"}

 

posted @ 2018-10-27 19:45  biu嘟  阅读(6065)  评论(0编辑  收藏  举报