随记-Kibana Dev Tools,ES 增删改查 索引,D

2023-08-25  本文已影响0人  DragonFangQy

索引

创建索引

创建索引

PUT index_test

创建索引 并 修改分片信息

# 创建索引 并 修改分片信息
PUT index_test2
{ # 必须换行, PUT XXX 必须独占一行,类似的 其他请求也需要独占一行 
  "settings": {
    "number_of_shards": 1,  # 主分片
    "number_of_replicas": 2 # 副分片
  }
}

修改索引

# 只能修改副分片,不能修改主分片
PUT index_test2/_settings
{  "number_of_replicas": 5 }

删除索引

DELETE index_test2

Document

新增

_doc/ID , 新增 or 替换

# 索引名/_doc/唯一ID
# {"key": "value", ...  }
# 如果存在,全量替换;否则,新增
PUT index_test3/_doc/100
{
  "name": "张三",
  "desc": "法外狂徒"
}

_create/ID , 强制新增

# 索引名/_create/唯一ID
# {"key": "value", ...  }
# 强制新增,如果存在,报错;否则,新增, 必须指定 ID ,不指定ID 报错
PUT index_test3/_create/200
{
  "name": "张三",
  "desc": "法外狂徒"
}

_doc , 自动生成ID

# 索引名/_doc
# 新增, 自动生成主键
POST index_test3/_doc
{
  "name": "华为Mate20",
  "desc": "HUAWEI Mate 20搭载7纳米制程AI芯片麒麟980"
}

查询

_search , 查询全部

# 索引名/_search
# 查询全部
GET  index_test3/_search

_doc/id , 单条查询

# 索引名/_doc/id
# 根据 ID 查询单条记录
GET  index_test3/_doc/100

_mget , 批量查询

# 索引名/_mget
# {"docs": [{"_id":100},{"_id":200}]}
# 批量查询
GET index_test3/_mget
{
  "docs": [
    {"_id":100},
    {"_id":200}
  ]
}

更新

_update/id

# 索引名/_update/id
# {"doc":{"key":"value" ,... }}
# 更新, 只更新指定 key;key 不在指定id 中,新增 key
POST index_test3/_update/2ESVL4oB5It7JfWJLnSl
{
  "doc":{
    "cpu": 8,
    "memory": 16
  }
}

删除

_doc/id

# 索引名/_doc/id
# 删除指定 id 
DELETE index_test3/_doc/200

批量操作

_mget,查询

# 索引名/_mget
# {"docs": [{"_id":100},{"_id":200}]}
# 批量查询
GET index_test3/_mget
{
  "docs": [
    {"_id":100},
    {"_id":200}
  ]
}

_bulk,新增

create , 强制创建

# create 强制创建,如果指定 ID 已存在,则报错;可以不指定 ID, 则ID 自动生成
POST _bulk
{"create":{"_index": "index_test3", "_id": "0826_1301_0001"}}
{ "品牌": "华为", "华为型号":"P50 Pro(麒麟版)"}
{"create":{"_index": "index_test3", "_id": "0826_1301_0001"}}
{ "品牌": "华为", "华为型号":"P50 Pro(麒麟版)"}
{"create":{"_index": "index_test3"}} 
{ "品牌": "华为", "华为型号":"P50 Pro(麒麟版)"}

index , 创建或者全量替换

# index 创建或者全量替换,指定ID 存在,则全量替换;不存在,则创建;不指定 ID, 则ID 自动生成
POST _bulk
{"index":{"_index": "index_test3", "_id": "0826_1301_0002"}}
{ "品牌": "华为", "华为型号":"P50 Pro(麒麟版)"}
{"index":{"_index": "index_test3", "_id": "0826_1301_0002"}}
{ "品牌": "华为", "华为型号":"P60 Pro"}
{"index":{"_index": "index_test3"}}
{ "品牌": "华为", "华为型号":"MATE 50"}

混合 , create and index

# 混合,_bulk 允许多个不同行为一起执行,这里是 create index ,
# 也可以和后续的 更新&&删除 一起使用
POST _bulk
{"create":{"_index": "index_test3", "_id": "0826_1301_0001"}}
{ "品牌": "华为", "华为型号":"P50 Pro(麒麟版)"}
{"create":{"_index": "index_test3", "_id": "0826_1301_0001"}}
{ "品牌": "华为", "华为型号":"P50 Pro(麒麟版)"}
{"create":{"_index": "index_test3"}} 
{ "品牌": "华为", "华为型号":"P50 Pro(麒麟版)"}
{"index":{"_index": "index_test3", "_id": "0826_1301_0002"}}
{ "品牌": "华为", "华为型号":"P50 Pro(麒麟版)"}
{"index":{"_index": "index_test3", "_id": "0826_1301_0002"}}
{ "品牌": "华为", "华为型号":"P60 Pro"}
{"index":{"_index": "index_test3"}}
{ "品牌": "华为", "华为型号":"MATE 50"}

_bulk,更新

update , 局部更新

# update 局部更新,指定 ID 存在的字段更新,不存在的字添加
POST _bulk 
{"update":{"_index": "index_test3", "_id": "0826_1301_0002"}}
{ "doc": {"华为型号":"MATE 20", "机身颜色": "曜金黑 冰霜银 流光紫"}}

_bulk,删除

POST _bulk
{"delete": {"_index": "index_test3", "_id": "30RKMIoB5It7JfWJdXRp"}}
{"delete": {"_index": "index_test3", "_id": "4ERKMIoB5It7JfWJdXRp"}}

到此结 DragonFangQy 2023.8.26

上一篇下一篇

猜你喜欢

热点阅读