elasticsearch
文档相当于mysql中的一行数据。
操作则使用REST API
POST
用于更新数据,如果不存在,则会创建,如果存在,则更新
指定id,指定更新或者创建记录的唯一id,此id和记录中的id不是同一id
POST /poi/_doc/1
{
"id": 10001,
"category": "公园",
"name": "笔架山公园",
"address": "广东省深圳市福田区笋岗西路",
"location": [xxx,xxx],
"remark": "",
"create_time": 1732774708165
}
不指定id,数据中id会自动生成字符串,会创建一条新的记录
POST /poi/_doc/
{
"id": 10001,
"category": "公园",
"name": "笔架山公园",
"address": "广东省深圳市福田区笋岗西路",
"location": [xxx,xxx],
"remark": "",
"create_time": 1732774708165
}
_create方式,必须指定id,如果id存在,则创建失败
POST /poi/_create/1
{
"id": 10001,
"category": "公园",
"name": "笔架山公园",
"address": "广东省深圳市福田区笋岗西路",
"location": [xxx,xxx],
"remark": "",
"create_time": 1732774708165
}
PUT
添加文档,如果不存在,则创建,如果存在,则更新,PUT
方式添加文档,必须指定id
PUT /poi/_doc/1
{
"id": 10001,
"category": "公园",
"name": "笔架山公园",
"address": "广东省深圳市福田区笋岗西路",
"location": [xxx,xxx],
"remark": "",
"create_time": 1732774708165
}
GET /poi/_doc/1
GET /poi/_doc/1?_source=name,location,address
可直接使用指定id的POST更新
POST /poi/_doc/1
{
}
POST /poi/_update/1
{
"doc":{
"remark": "我发生了一次更新"
}
}
DELETE /poi/_doc/1
POST /poi/_doc/_delete_by_query
{
"query": {
"match_all": {}
}
}
以_bulk命令批量处理文档 格式:
POST _bulk
{"create":{"_index":"索引名","_id":"ID"}} //一行数据说明
{数据} //一行数据
{"create":{"_index":"索引名","_id":"ID"}} //一行数据说明
{数据} //一行数据