1、_cat
_cat主要是用作查看命令,如一下命令:
GET /_cat/nodes:查看所有节点 http://192.168.56.10:9200/_cat/nodes
GET /_cat/health:查es健康状况 http://192.168.56.10:9200/_cat/health
GET /_cat/master:查主节点 http://192.168.56.10:9200/_cat/master
GET /_cat/indices:查看所有索引 http://192.168.56.10:9200/_cat/indices 相当于我们mysql中的show database
2、索引一个文档(保存)
保存一个数据,保存在哪个索引的哪个类型下,指定用哪个唯一标识
PUT customer/external/1 在customer索引下的external类型下保存1号数据,请求路径如下
http://192.168.56.10:9200/customer/external/1
{“name”:“hahaha”}
说明:PUT和POST都可以
POST新增,如果不指定ID,会自动生成ID,指定ID就会修改这个数据,并新增版本号
PUT可以新增可以修改,PUT必须指定ID,由于PUT需要指定ID,我们一般都用来做修改操作,不指定ID会报错。
3、查询文档
GET customer/external/1 发送这个请求就可以查询到我们保存的数据
接下来看下下面的请求,后面跟着两个参数
http://192.168.56.10:9200/customer/external/1?if_seq_no=0&if_primary_term=1
_seq_no:并发控制字段,每次更新就会+1,用来做乐观锁
_primary_term:同上,主分片重新分配,就会变化
4、更新文档
POST customer/external/1/_update
{
“doc”:{“name”:“hahaha”}
}
或者
POST customer/external/1
{“name”:“hahaha”}
或者
PUT customer/external/1
{“name”:“hahaha”}
5、删除文档&索引
DELETE customer/external/1
或者
DELETE customer
6、批量操作
POST customer/external/_bulk
{“index”:{“_id”:“1”}}
{“name”:“huohuo”}
{“index”:{“_id”:“2”}}
{“name”:“huohuo”}
以上保存、查询、更新、删除操作我们可以使用postman来进行操作,但是这个操作只能用kibana来操作。打开kibana网址,
http://192.168.56.10:5601/
找到 Dev Tools菜单,编写批量请求操作如下
效果如下,
7、批量导入样本数据
访问如下网址,把内容复制到kibana中
http://raw.githubusercontent.com/elastic/elasticsearch/master/docs/src/test/resources/accounts.json
执行 POST bank/account/_bulk
测试数据
然后我们查询有多少个索引
以上数据说明了bank索引有1000条数据,总共占用空间427.1kb,批量导入就完成了
以上就是我们学习ElasticSearch的初步了解,接下来介绍一些高级的用法