本文主要内容:
1 ElasticSearch常用的操作
2 ElasticSearchbulk命令
ES REST API
elasticsearch支持多种通讯,其中包括http请求响应服务,因此通过curl命令,可以发送http请求,并得到json返回内容。
常用的REST请求有:
检查集群状态
curl localhost:9200/_cat/health?v
检查节点状态
curl localhost:9200/_cat/nodes?v
查询全部索引
curl localhost:9200/_cat/indices?v
注:集群状态分为green yellow red三种状态,green 表示健康,yellow表示数据完整但是副本存在问题,red表示数据不完整。本例中集群是两个节点,另外一个节点没有开,故状态为yellow。
创建索引
curl -XPUT localhost:9200/索引名/类型/id -d {//JSON格式的body体}
删除索引
curl -XDELETE localhost:9200/索引名
查询索引
curl -XGET localhost:9200/索引名/类型/id
ES 使用bulk 添加数据
使用bulk命令,添加json文件中的数据。
1.新建json文件accounts.json,定义json数据格式,其中每个数据格式都是如下:
{
"index":{"_id":"1"}
"account_number": 0,
"balance": 16623,
"firstname": "Bradshaw",
"lastname": "Mckenzie",
"age": 29,
"gender": "F",
"address": "244 Columbus Place",
"employer": "Euron",
"email": "bradshawmckenzie@euron.com",
"city": "Hobucken",
"state": "CO"
}
2.执行命令,批量添加:
curl -XPOST 'localhost:9200/bank/account/_bulk?pretty' --data-binary "@accounts.json"
3.查询索引
curl 'localhost:9200/_cat/indices?v'
表示我们已经成功批量导入1000条数据索引到bank索引中。