elasticsearch常用命令
elasticsearch的rest访问格式:
curl -X<REST Verb> <Node>:<Port>/<Index>/<Type>/<ID>
[es@vm1 bin]$ ./elasticsearch --cluster.name myes --node.name node1
2、查看集群状态
- [es@vm1 ~]$ curl http://vm1:9200/_cat/health?v
- epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks
- 1432704777 22:32:57 myes green
3、查看节点列表
[es@vm1 ~]$ curl http://vm1:9200/_cat/nodes?vhost ip heap.percent ram.percent load node.role master namevm1 192.168.1.111 3 24 0.04 d * node1
4、查看index列表
[es@vm1 ~]$ curl http://vm1:9200/_cat/indices?vhealth status index pri rep docs.count docs.deleted store.size pri.store.size
5、创建index
[es@vm1 ~]$ curl -XPUT http://vm1:9200/customer?pretty{"acknowledged" : true}
6、添加一个document
[es@vm1 ~]$ curl -XPUT vm1:9200/customer/external/1?pretty -d '{"name":"lisg"}'{"_index" : "customer","_type" : "external","_id" : "1","_version" : 4,"created" : true}
7、检索一个document
[es@vm1 ~]$ curl -XGET vm1:9200/customer/external/1?pretty{"_index" : "customer","_type" : "external","_id" : "1","_version" : 4,"found" : true,"_source":{"name":"lisg"}}
8、删除一个document
[es@vm1 ~]$ curl -XDELETE vm1:9200/customer/external/1?pretty{"found" : true,"_index" : "customer","_type" : "external","_id" : "1","_version" : 5}
9、删除一个type
[es@vm1 ~]$ curl -XDELETE vm1:9200/customer/external?pretty{"acknowledged" : true}
10、删除一个index
[es@vm1 ~]$ curl -XDELETE vm1:9200/customer?pretty{"acknowledged" : true}
11、POST方式可以添加一个document,不用指定ID
[es@vm1 ~]$ curl -XPOST vm1:9200/customer/external?pretty -d '{"name":"zhangsan"}'{"_index" : "customer","_type" : "external","_id" : "AU2UAazzBzlrcKeIwh7T","_version" : 1,"created" : true}
12、使用doc更新document
[es@vm1 ~]$ curl -XPUT vm1:9200/customer/external/1?pretty -d '{"name":"lisg4", "age":28}'
{
"_index" : "customer",
"_type" : "external",
"_id" : "1",
"_version" : 4,
"created" : false
}
13、使用script更新document(1.4.3版本动态脚本是被禁止的)
[es@vm1 ~]$ curl -XPOST vm1:9200/customer/external/1/_update?pretty -d '{"script":"ctx._source.age += 5"}'
{
"error" : "ElasticsearchIllegalArgumentException[failed to execute script]; nested: ScriptException[dynamic scripting for [groovy] disabled]; ",
"status" : 400
}
14、查询全部
[es@vm1 ~]$ curl -XGET vm1:9200/customer/external/_search?pretty
{
"took" : 12,
"timed_out" : false,
"_shards" : {
"total" : 5,
"successful" : 5,
"failed" : 0
},
"hits" : {
"total" : 3,
"max_score" : 1.0,
"hits" : [ {
"_index" : "customer",
"_type" : "external",
"_id" : "AU2UAazzBzlrcKeIwh7T",
"_score" : 1.0,
"_source":{"name":"zhangsan"}
}, {
"_index" : "customer",
"_type" : "external",
"_id" : "1",
"_score" : 1.0,
"_source":{"name":"lisg4", "age":28}
}, {
"_index" : "customer",
"_type" : "external",
"_id" : "2",
"_score" : 1.0,
"_source":{"name":"dengsl"}
} ]
}
}
15、批量操作,{}之间要换行
[es@vm1 ~]$ curl -XPOST vm1:9200/customer/external/_bulk?pretty -d '> {index:{_id:3}}> {name:"zhangsan", age:28}> {index:{_id:4}}> {name:"lisi", age:29}> {update:{_id:4}}> {doc:{name:"lisi2", age:30}}> {delete:{_id:"AU2UAazzBzlrcKeIwh7T"}}> '{"took" : 34,"errors" : false,"items" : [ {"index" : {"_index" : "customer","_type" : "external","_id" : "3","_version" : 1,"status" : 201}}, {"index" : {"_index" : "customer","_type" : "external","_id" : "4","_version" : 1,"status" : 201}}, {"update" : {"_index" : "customer","_type" : "external","_id" : "4","_version" : 2,"status" : 200}}, {"delete" : {"_index" : "customer","_type" : "external","_id" : "AU2UAazzBzlrcKeIwh7T","_version" : 2,"status" : 200,"found" : true}} ]}
上面的语句顺序执行的操作有:
1)添加索引:张三,28
2)添加索引:李四,29
3)更新李四:李四2,30
4)删除索引:id是AU2UAazzBzlrcKeIwh7T的索引
16、从文件中加载数据(accounts.json见附件)
[es@vm1 ~]$ curl -XPOST http://vm1:9200/customer/external/_bulk?pretty --data-binary @accounts.json[es@vm1 ~]$ curl -XGET vm1:9200/_cat/indices?vhealth status index pri rep docs.count docs.deleted store.size pri.store.sizeyellow open customer 5 1 1000 0 442.3kb 442.3kb
17、
附件列表
浙公网安备 33010602011771号