ElasticSearch入門一(索引CRUD和文檔的CRUD)

說明

上篇我們安裝了ElasticSearch和 Kibana,這次我們來對索引和文檔做一些簡單操作

es中索引和文檔的簡單說明
index == 數據庫的概率
Type== 表的概念
document == 行的概念

索引的常用操作

1. 查詢所有的索引信息

GET _cat/indices?v

在這裏插入圖片描述

2. 創建索引

PUT /索引名

在這裏插入圖片描述

3. 刪除索引

DELETE /索引名

在這裏插入圖片描述

文檔的常用操作

1. 新增文檔

PUT /index/type/id
{"json數據"}

示例:

PUT /ecommerce/product/5
{
  "name":"iphone",
  "desc":"call phone",
  "price":3000,
  "producer":"iphone producer",
  "tags":["communication","game"]
}

在這裏插入圖片描述

ps 這個警告不用管,因爲我的elasticSearch用的最新的7.7,官方是不推薦指定type所以會有這個警告

2. 查詢文檔

GET /index/type/id

示例:

GET /ecommerce/product/5

在這裏插入圖片描述

3. 替換文檔

PUT /index/type/id
{json}

示例

PUT /ecommerce/product/5
{
  "name":"iphone",
  "desc":"call phone",
  "price":5000,
  "producer":"iphone producer",
  "tags":["communication","game"]
}

在這裏插入圖片描述

ps 這裏的替換是全量替換的意思,不是單個值的更新,所以如果你需要更新單個值必須攜帶其他原始值

4. 刪除文檔

DELETE /index/type/id

示例:

DELETE /ecommerce/product/5

在這裏插入圖片描述

ps:不會理解物理刪除,只會將其標記爲deleted,當數據越來越多的時候,在後臺自動刪除

5. 更新文檔

POST /index/type/id/_update
{
  "doc":{
    屬性
  }
}

示例:

POST /ecommerce/product/5/_update
{
  "doc":{
    "name": "iphone1"
  }
}

在這裏插入圖片描述

ps 這纔是真正的更新,但是底層實現還是用的替換

6. 批量查詢

優點:減少網絡請求

  1. 相同index相同type
GET /ecommerce/product/_mget
{
  "ids":[1,2,3,4]
}
  1. 相同index不同type
GET /ecommerce/_mget
{
   "docs" : [
      {
         "_type" :  "product",
         "_id" :    1
      },
      {
         "_type" :  "product1",
         "_id" :    2
      }
   ]
}

在這裏插入圖片描述
3. 不同index不同type

GET /_mget
{
   "docs" : [
      {
         "_index" : "ecommerce",
         "_type" :  "product",
         "_id" :    3
      },
      {
         "_index" : "ecommerce1",
         "_type" :  "product1",
         "_id" :    2
      }
   ]
}

在這裏插入圖片描述

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