ES在6.0之后Type已修改成唯一的_doc,下边对文档Type的操作都是指定的_doc

在指定索引下创建文档

index -如果ID不存在,创建新的文档。如果ID存在,先删除现有的文档,再创建新的文档,版本号增加
create – 如果ID存在,会报失败

## index方式创建索引
PUT my_index/_doc/1
{"user":"mike","comment":"You know, for search"}


## create方式创建索引
## 指定ID
PUT my_index/_create/1
{"user":"mike","comment":"You know, for search"}
## 不指定ID,elasticsearch自动生成
POST my_index/_doc
{"user":"mike","comment":"You know, for search"}

查询指定索引文档

## 通过指定索引的文档id查询文档
GET my_index/_doc/1

更新指定索引文档

put请求update 先删除后再插入形式,会导致其他字段丢失,如果只想修改一个字段,其他字段需要再次传入
post请求 update 文档必须已经存在,更新只会对相应字段做增量修改

## put请求更新指定索引,指定id
## 会导致其他字段丢失
PUT my_index/_doc/1
{
	"comment":"I dont know Elasticsearch"
}

## 防止其他字段被覆盖,传入其他字段和内容
PUT my_index/_doc/1
{
	"user":"mike",
        "comment":"I dont know Elasticsearch"
}


## 指定索引的文档ID进行更新
## doc是默认的字段,可以更新文档的一个字段或多个字段
POST my_index/_doc/1/_update
{
	"doc":{
  	"user":"mike",
  	"comment":"You know, Elasticsearch"
  }
}

删除指定索引文档

## 指定索引的文档id进行删除
DELETE my_index/_doc/1

Bulk批量操作(增,删,改)指定索引文档

Bulk支持在一次API调用中,对不同的索引进行操作,支持4种操作类型:index,create,update,delete。操作中单调操作失败,并不会影响其他操作,返回结果包括了每一条操作执行的结果
bulk API每行需要指定index信息,也可以在URI中指定
注意:_bulk操作时增,删,改的子句应该在一行,不能换行

## 通过URI中指定索引来进行批量操作
POST my_index/_doc/_bulk
{"index":{"_id":5}}
	{"user":"Jim","comment":"I dont know Elasticsearch"}
{"update":{"_id":2}}
	{"doc":{"comment":"I know Elasticsearch"}
{"delete":{"_id":3}}

## 在子句中指定索引,进行批量操作
POST _bulk
{"index":{"_index":"test","_id":"1"}}
	{"field1":"value1"}
{"delete":{"_index":"test","_id":"2}}
{"create":{"_index":"test2","_id":"3"}}
	{"field1":"value3"}
{"update":{"_id":"1","_index":"test"}}
	{"doc":{"field2":"value2"}}

mget批量读取操作

GET _mget
{
	"docs":[
  	{
    	"_index":"user",
    	"_id":1
    },
  	{
    	"_index":"comment",
    	"_id":1
    }
  ]
}

msearch 批量查询

## 可以在子查询中指定索引,不使用URI中指定的索引进行查询
POST my_index/_msearch
{}
	{"query":{"match_all":{}},"from":0,"size":10}
{}
	{"query":{"match_all":{}}}
{"index":"twitter2"}
	{"query":{"match_all":{}}}

原文地址:http://www.cnblogs.com/tenic/p/16795848.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性