//
// Elasticsearch 指令
//
1 查看健康状态
// http://localhost:9200/_cat/health?v
GET /_cat/health?v
集群的健康值理解
green:每个索引的primary shard和replica shard都是active状态的
yellow:每个索引的primary shard都是active状态的,但是部分replica shard不是active状态(比如单台机器上副本无法被分配),处于不可用的状态
red:不是所有索引的primary shard都是active状态的,部分索引有数据丢失了
2 创建索引 mydb
PUT /mydb?pretty
3 获取所有索引
GET /_cat/indices?v
4 插入文档 到 mydb 索引,类型名称为 external ,并且ID为
1
PUT /mydb/external/
1?pretty
{
"name":
"成龙",
"age":
30,
"date":
"2018-04-12 12:01:01"
}
注意:如果我们用不同的文档内容(或者相同)再次执行上面的命令,elasticsearch将会用一个新的文档取代旧的文档(即重建索引)。
5 插入文档 到 mydb 索引,类型名称为 external ,不指定id, 必须用POST
POST /mydb/external?pretty
{
"name":
"王鹏",
"age":
28,
"date":
"2018-04-11 13:01:01"
}
6 修改id=
1的文档
POST /mydb/external/
1/_update?pretty
{
"doc": {
"name":
"成龙-01",
"age":
31 }
}
7 通过内置脚本修改,修改id=XJ
7uwmIBJNOIwaI
44rwX 的文档
POST /mydb/external/XJ
7uwmIBJNOIwaI
44rwX/_update?pretty
{
"script" :{
"lang":
"painless",
"inline":
"ctx._source.age += 10"
}
}
8 通过内置脚本参数修改,修改id=XJ
7uwmIBJNOIwaI
44rwX 的文档
POST /mydb/external/XJ
7uwmIBJNOIwaI
44rwX/_update?pretty
{
"script" :{
"lang":
"painless",
"inline":
"ctx._source.age = params.age",
"params":{
"age":
100
}
}
}
9 删除文档
DELETE /mydb/external/
3?pretty
10 批处理 更新id=
1 删除id=
2 插入id=
3
POST /mydb/external/_bulk?pretty
{
"update":{
"_id":
"1"}}
{
"doc": {
"name":
"jack" } }
{
"delete":{
"_id":
"2"}}
{
"index":{
"_id":
"3"}}
{
"name":
"新人" }