ES学习(七)--documentAPI

一、创建document

  A、指定id创建

    PUT /ecommerce/_doc/1

    {

    }

  B、自动添加id

    POST /ecommerce/_doc

    {}

二、全量替换(将原来的标记未删除,新建一个document,当空间不够时,标记为删除的document会被删除)

  A、PUT /ecommerce/_doc/1

    {}

  B、强制创建

    PUT /ecommerce/_doc/1/_create

三、删除

  A、DELETE /ecommerce/_doc/1

四、部分修改

  A、POST /ecommerce/_update/1

    {}

  B、优点

    1. 所有的查询、修改和写回操作都发生在一个shard内部,避免了所有的网络数据传输的开销,大大提升了性能。

    2. 减少了查询和修改的时间间隔,可以有效地减少并发冲突的情况

五、乐观锁并发控制

  POST /ecommerce/_update/1?if_seq_no=17&if_primary_term=2
  {
    "doc": {
      "name":"changed3"
    }
  }

六、多个查询(多个查询尽量用多查询操作,可以提升很大性能)

  A、查询不同index下的数据

    GET /_mget
    {
      "docs":[
        {
          "_index":"ecommerce",
          "_type":"_doc",
          "_id":"1"
        },
        {
          "_index":"ecommerce",
          "_type":"_doc",
          "_id":"2"
        }
      ]
    }

  B、查询同一个index下的数据 

    GET /ecommerce/_mget
    {
      "docs":[
        {
          "_type":"_doc",
          "_id":"1"
        },
        {
          "_type":"_doc",
          "_id":"2"
        }
      ]
    }

  C、查询同一个index,同一个type下的数据

  GET /ecommerce/_doc/_mget
  {
    "ids":["1","2"]
  }

  

原文地址:https://www.cnblogs.com/DjanFey/p/12115015.html