elasticSerch入门

_cat

GET /_cat/nodes 查看所以节点
GET /_cat/health 查看健康状况
GET /_cat/master 查看主节点
GET /_cat/indices 查看所有索引

索引操作

创建
PUT 索引名称
查看索引
GET 索引名称
删除索引
DELETE 索引名称

文档操作

添加
若数据不存在则进行添加操作 否则进行更新操作 若唯一键不存在 则es会自动生成一个唯一键
发送PUT请求必须携带id
PUT/POST 索引名称/类型名称/唯一键
{
"key": "value"
}

查询文档
GET 索引名称/类型名称/唯一键

{
  "_index" : "customer",  索引名称
  "_type" : "external", 类型名称
  "_id" : "1", 唯一键
  "_version" : 2, 版本号 每次更新 + 1
  "_seq_no" : 1, 乐观锁操作 每次发生改变 + 1
  "_primary_term" : 1,  主片会重新分配
  "found" : true, 找到数据
  "_source" : {
    "name" : "lyra"
  }
}

_seq_no _primary_term 这两个字段为乐观锁字段 可以在进行更新操作时携带这连个字段 若这两个字段与库中的记录一致则进行更新操作
否则页面返回409
POST customer/external/1?if_primary_term=1&if_seq_no=3
{
"name": "lyra"
}

更新操作
PUT/POST
如果有_update 必须写doc 这种更新方式会检查库中数据是否与一致 则不会进行更新
POST 索引名称/类型/唯一键/_update
{
"doc": {
"name": "lyraHeartstrings"
}
}

这种方式不会检查表中数据是否一致 一律进行更新操作
POST 索引名称/类型/唯一键
{
"name": "lyraHeartstrings"
}

_bulk

批量操作 进行批量插入 第一列设置id 第二列设置表中数据

POST customer/external/_bulk
{"index": {"_id": 50}}
{"name": "jack"}
{"index": {"_id": 51}}
{"name": "rose"}
{"index": {"_id": 52}}
{"name": "lyra"}
{"index": {"_id": 53}}
{"name": "heartsings"}
{"index": {"_id": 54}}
{"name": "bon"}

批量进行crud
和上面一样 第一列进行索引的选择

POST /_bulk
{"index": {"_index": "test", "_type": "keyword", "_id": "1"}}
{"name": "lyra"}
{"create": {"_index": "test", "_type": "keyword", "_id": 3}}
{"name": "heart"}
posted @   RainbowMagic  阅读(103)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示