PS:环境搭建忽略
基本集群操作
集群健康信息
curl -X GET "localhost:9200/_cat.health?v"
集群节点列表
GET /_cat/nodes?v
索引基本操作
集群中的索引信息
GET /_cat/indices?v
创建一个索引
PUT /test?pretty
删除一个索引
DELETE /test?pretty
数据基本操作
插入文档
- 带ID
PUT /test/_doc/1?pretty
{
"name":"tt"
}
- 不带ID,ES会生成一个随机ID
POST /test/_doc?pretty
{
"name":"tt"
}
更新文档
POST /test/_update/1?pretty
{
"doc":{
"name":"lyt",
"age":10
}
}
通过脚本执行更新
POST /test/_update/1?pretty
{
"script":"ctx._source.age += 5"
}
ctx._source指的是见过更新的当前源文档
删除文档
DELETE /test/_doc/1?pretty
ES中,删除操作只是把需要删的文档ID记录到了一个列表中,当段合并时才有可能真正把源文档删除
批量操作
POST /test/_bulk?pretty
{"index":{"_id":"1"}}
{"name":"bulk1", "age":10}
{"index":{"_id":"2"}}
{"name":"bulk2", "age":10}
{"index":{"_id":"3"}}
{"name":"bulk 3", "age":10}
{"index":{"_id":"4"}}
{"name":"bulk 4", "age":20}
{"index":{"_id":"5"}}
{"name":"a bulk 5", "age":30}
{"index":{"_id":"6"}}
{"name":"abulk bb6", "age":40}
批量操作不会由于其中一个操作失败而失败。当API返回时,它会为每个操作提供一个状态。