Elasticsearch入门知识(二)

1、关于put /index/type/id 和post  /index/type/id/_update两这个区别

put操作,如果id不存在,则创建新的document,如果id存在是全量替换

post当中的是对部分内容的替换,es对两者底层的实现也是不同的,称做是partial update,其底层实现方式是

a.内部获取到全量的document对象

b.将传递过来的filed更新到document当中

c.将旧的document设置成deleted

d.将新创建的document创建出来

partial update和直接update全量的不同在于,整个操作过程都是在一个es的shard当中执行的,执行结束之后,才会将数据同步到不同的shard上面,避免了二次网络请求

2、批量查询命令

对于确定的index,type,批量根据id

_mget命令

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

也可以查询不同的type下的数据

GET /ecommerce/_mget
{

  "docs":[{
    "_type":"product",
    "_id":1
  },
  {
    "_type":"product",
    "_id":1
  }
  ]
}

 

你可能感兴趣的:(elasticsearch,elasticsearch)