在Elasticsearch 7.3中,采用RESTful风格对索引进行增删改查的操作主要涉及以下几种HTTP方法和对应的URL路径:
增加(创建文档)
-
创建单个文档(指定ID):
PUT /索引名/_doc/文档ID
请求体包含文档内容,如:
{ "字段1": "值1", "字段2": "值2", ... }
-
如果允许自动生成文档ID:
POST /索引名/_doc/
同样在请求体中包含文档内容。
删除
删除单个文档:
DELETE /索引名/_doc/文档ID
修改(更新文档)
部分更新文档:
POST /索引名/_update/文档ID
请求体可以包含script
或doc
字段来进行文档的部分更新。
完全替换文档:
PUT /索引名/_doc/文档ID
再次使用PUT
请求并提交完整的文档内容以替换原有文档。
查询(获取文档)
获取单个文档:
GET /索引名/_doc/文档ID
查询多个文档(搜索)
执行搜索查询:
GET /索引名/_search
请求体包含搜索查询DSL(Domain Specific Language)。
创建索引
创建新索引(包括定义Mapping):
PUT /索引名
{
"mappings": {
"properties": {
"字段1": { "type": "text" },
"字段2": { "type": "keyword" },
...
}
},
"settings": {
// 索引级别的设置,如分片数量、副本数量等
}
}
删除索引
删除整个索引:
DELETE /索引名
请注意,从 Elasticsearch 7.x 版本开始,已经移除了类型(Type),所以在URL路径中不再需要指定类型名,直接在索引名后面跟 _doc
或者自定义的映射类型(在7.x之前是必需的)。同时,以上所有HTTP请求都假定Elasticsearch服务运行在本地主机的默认端口9200上,实际使用时请替换为您的Elasticsearch集群的实际地址和端口。