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"}
虽然道路是曲折的,但前途是光明的。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律