elasticSearch學習筆記:增刪改、批量增刪改

增刪改

批量增刪改:使用_mget _bulk

api詳見:

https://www.elastic.co/guide/en/elasticsearch/reference/6.3/docs-multi-get.html

https://www.elastic.co/guide/en/elasticsearch/reference/6.3/docs-bulk.html

java類api見:

https://www.elastic.co/guide/en/elasticsearch/client/java-api/6.3/java-docs.html

 

下面是一些筆記

創建索引

(相當於創建數據庫)

Put 索引名

 

含配置

put lib1

{

  "settings":{

    "index":{

      "number_of_shards":3,

      "number_of_replicas":0

    }

  }

}

設置分片爲3,

設置備份數量0(因爲只有1臺服務器)

出現如下:

{

  "acknowledged": true,

  "shards_acknowledged": true,

  "index": "lib1"

}

表示成功

 

默認配置

Put lib2

即可

出現

{

  "acknowledged": true,

  "shards_acknowledged": true,

  "index": "lib2"

}

說明成功

查看索引配置

GET lib1/_settings

備註:含下劃線的,一般是es自己定義好的關鍵字

GET _all/_settings  查看所有索引的設置

添加文檔(指定ID)

類似於添加一條數據

PUT lib1/user/7

{

  "name":"張三"

}

 

格式:

PUT 索引名/類名/ID名

 

向索索引lib1中,的user類,添加一個文檔id爲7的文檔,內容爲如上。

{

  "_index": "lib1",

  "_type": "user",

  "_id": "7",

  "_version": 1,  //版本

  "result": "created",

  "_shards": {

    "total": 1,

    "successful": 1,

    "failed": 0

  },

  "_seq_no": 0,

  "_primary_term": 1

}

 

可以理解爲: 這個條數據, 在格式化數據sql類型時,name就是字段名,張三就是字段值

其中,類,可以理解爲一個表

一般建議一個所以,有一個類。

添加文檔(不指定ID)

POST lib1/user

{

  "name":"趙四"

}

 

{

  "_index": "lib1",

  "_type": "user",

  "_id": "opwkIHABn5VQ8bsa3L9t",  // id是系統自己生成

  "_version": 1,

  "result": "created",

  "_shards": {

    "total": 1,

    "successful": 1,

    "failed": 0

  },

  "_seq_no": 0,

  "_primary_term": 1

}

 

查找文檔

GET lib1/user/1

在lib1的user中,查找id是1的文檔

查找文檔,指定字段

GET lib1/user/1?_source=name,age,…

修改文檔(覆蓋的方式)

PUT lib1/user/7

{

  "name":"張三丰"

}

同指定id添加文檔

{

  "_index": "lib1",

  "_type": "user",

  "_id": "7",

  "_version": 2,

  "result": "updated",

  "_shards": {

    "total": 1,

    "successful": 1,

    "failed": 0

  },

  "_seq_no": 1,

  "_primary_term": 1

}

 

修改文檔(指定字段修改)

POST lib1/user/7/_update

{

  "doc":{

    "name":"zhangsanfeng"

  }

}

 

注意,必須指定操作_update

 

{

  "_index": "lib1",

  "_type": "user",

  "_id": "7",

  "_version": 3,

  "result": "updated",

  "_shards": {

    "total": 1,

    "successful": 1,

    "failed": 0

  },

  "_seq_no": 2,

  "_primary_term": 1

}

 

刪除文檔

DELETE lib1/user/1

然後查看文檔

{

  "_index": "lib1",

  "_type": "user",

  "_id": "1",

  "found": false

}

刪除索引

DELETE lib2


 

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