ElasticSearch實戰之Kibana基本操作(三)

Kibana的基本操作

1. 索引(Index)的基本操作

PUT /dangdang/       	  	創建索引
DELETE /dangdang			刪除索引
DELETE /*					刪除所有索引
GET /_cat/indices?v 		查看索引信息

2. 類型(type)的基本操作

創建類型

創建/dangdang索引並創建(product)類型

PUT /dangdang             
{
  "mappings": {
    "product": {
      "properties": {
        	"title":    { "type": "text"  },
        	"name":     { "type": "text"  },
       		"age":      { "type": "integer" },
        	"created":  {
         		 "type":   "date",
          		 "format": "strict_date_optional_time||epoch_millis"
        		}
      		}
    	}
  	}
}

注意: 這種方式創建類型要求索引不能存在

Mapping Type: : text , keyword , date ,integer, long , double , boolean or ip

查看類型

GET /dangdang/_mapping/product # 語法:GET /索引名/_mapping/類型名


3. 文檔(document)的基本操作

添加文檔

PUT /ems/emp/1   #/索引/類型/id
{
  "name":"趙小六",
  "age":23,
  "bir":"2012-12-12",
  "content":"這是一個好一點的員工"
}

查詢文檔

GET /ems/emp/1  
返回結果:
{
  "_index": "ems",
  "_type": "emp",
  "_id": "1",
  "_version": 1,
  "found": true,
  "_source": {
    "name": "趙小六",
    "age": 23,
    "bir": "2012-12-12",
    "content": "這是一個好一點的員工"
  }
}

刪除文檔

DELETE /ems/emp/1
{
  "_index": "ems",
  "_type": "emp",
  "_id": "1",
  "_version": 2,
  "result": "deleted", #刪除成功
  "_shards": {
    "total": 2,
    "successful": 1,
    "failed": 0
  },
  "_seq_no": 1,
  "_primary_term": 1
}

更新文檔

1.第一種方式  更新原有的數據
    POST /dangdang/emp/1/_update
    {
      "doc":{
        "name":"xiaohei"
      }
    }
2.第二種方式  添加新的數據
    POST /ems/emp/1/_update
    {
      "doc":{
        "name":"xiaohei",
        "age":11,
        "dpet":"你好部門"
      }
    }
3.第三種方式 在原來數據基礎上更新
	POST /ems/emp/1/_update
    {
      "script": "ctx._source.age += 5"
    }

ES的使用語法風格爲:

REST /Index/Type/ID ------------ REST操作 /索引/類型/文檔id


批量操作

1. 批量索引兩個文檔
    PUT /dangdang/emp/_bulk
 	{"index":{"_id":"1"}} 
  		{"name": "John Doe","age":23,"bir":"2012-12-12"}
	{"index":{"_id":"2"}}  
  		{"name": "Jane Doe","age":23,"bir":"2012-12-12"}
    
2. 更新文檔同時刪除文檔
    POST /dangdang/emp/_bulk
		{"update":{"_id":"1"}}
			{"doc":{"name":"lisi"}}
		{"delete":{"_id":2}}
		{"index":{}}
			{"name":"xxx","age":23}

注意:批量時不會因爲一個失敗而全部失敗,二十繼續執行後續操作,批量在返回時按照執行的狀態開始返回


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章