本文主要內容:
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索引中。