elasticsearch的rest访问格式:
curl -X<REST Verb> <Node>:<Port>/<Index>/<Type>/<ID>
1、启动
[[email protected] bin]$ ./elasticsearch --cluster.name myes --node.name node1
2、查看集群状态
[[email protected] ~]$ 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、查看节点列表
[[email protected] ~]$ curl http://vm1:9200/_cat/nodes?v host ip heap.percent ram.percent load node.role master name vm1 192.168.1.111 3 24 0.04 d * node1
4、查看index列表
[[email protected] ~]$ curl http://vm1:9200/_cat/indices?v health status index pri rep docs.count docs.deleted store.size pri.store.size
5、创建index
[[email protected] ~]$ curl -XPUT http://vm1:9200/customer?pretty { "acknowledged" : true }
6、添加一个document
[[email protected] ~]$ curl -XPUT vm1:9200/customer/external/1?pretty -d ‘{"name":"lisg"}‘ { "_index" : "customer", "_type" : "external", "_id" : "1", "_version" : 4, "created" : true }
7、检索一个document
[[email protected] ~]$ curl -XGET vm1:9200/customer/external/1?pretty { "_index" : "customer", "_type" : "external", "_id" : "1", "_version" : 4, "found" : true, "_source":{"name":"lisg"} }
8、删除一个document
[[email protected] ~]$ curl -XDELETE vm1:9200/customer/external/1?pretty { "found" : true, "_index" : "customer", "_type" : "external", "_id" : "1", "_version" : 5 }
9、删除一个type
[[email protected] ~]$ curl -XDELETE vm1:9200/customer/external?pretty { "acknowledged" : true }
10、删除一个index
[[email protected] ~]$ curl -XDELETE vm1:9200/customer?pretty { "acknowledged" : true }
11、POST方式可以添加一个document,不用指定ID
[[email protected] ~]$ curl -XPOST vm1:9200/customer/external?pretty -d ‘{"name":"zhangsan"}‘ { "_index" : "customer", "_type" : "external", "_id" : "AU2UAazzBzlrcKeIwh7T", "_version" : 1, "created" : true }
12、使用doc更新document
[[email protected] ~]$ 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版本动态脚本是被禁止的)
[[email protected] ~]$ 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、查询全部
[[email protected] ~]$ 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、批量操作,{}之间要换行
[[email protected] ~]$ 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见附件)
[[email protected] ~]$ curl -XPOST http://vm1:9200/customer/external/_bulk?pretty --data-binary @accounts.json [[email protected] ~]$ curl -XGET vm1:9200/_cat/indices?v health status index pri rep docs.count docs.deleted store.size pri.store.size yellow open customer 5 1 1000 0 442.3kb 442.3kb
时间: 2024-10-11 04:00:40