删除文档
1.0 版引入
如果您不再需要索引中的文档,可以使用删除文档 API 操作来删除它。
端点
DELETE /<index>/_doc/<_id>
路径参数
参数 | 类型 | 描述 | 必需 |
<index> | 字符串 | 要从中删除的索引。 | 是 |
<_id> | 字符串 | 要删除文档的 ID。 | 是 |
查询参数
参数 | 类型 | 描述 | 必需 |
if_seq_no | 整数 | 仅当文档的版本号与指定数字匹配时才执行删除操作。 | 否 |
if_primary_term | 整数 | 仅当文档具有指定的主词时才执行删除操作。 | 否 |
refresh | 枚举 | 如果为 true,OpenSearch 会刷新分片,使删除操作对搜索结果可用。有效选项为 true 、false 和 wait_for ,其中 wait_for 告知 OpenSearch 在执行操作前等待刷新。默认为 false 。 | 否 |
路由 | 字符串 | 用于将操作路由到特定分片的值。 | 否 |
timeout | 时间 | 等待集群响应的时间。默认为 1m 。 | 否 |
version | 整数 | 要删除的文档版本,必须与文档的最新更新版本匹配。 | 否 |
version_type | 枚举 | 检索特定类型的文档。可用选项包括 external (如果指定版本号大于文档当前版本,则检索文档)和 external_gte (如果指定版本号大于或等于文档当前版本,则检索文档)。例如,要删除文档版本 3,请使用 /_doc/1?version=3&version_type=external 。 | 否 |
wait_for_active_shards | 字符串 | 在 OpenSearch 处理删除请求之前必须可用的活动分片数量。默认为 1(仅主分片)。设置为 all 或正整数。大于 1 的值需要副本。例如,如果指定值为 3,则索引必须有两个副本分布在另外两个节点上,操作才能成功。 | 否 |
请求示例
DELETE /sample-index1/_doc/1
示例响应
{
"_index": "sample-index1",
"_id": "1",
"_version": 2,
"result": "deleted",
"_shards": {
"total": 2,
"successful": 2,
"failed": 0
},
"_seq_no": 1,
"_primary_term": 15
}
响应正文字段
字段 | 描述 |
_index | 索引的名称。 |
_id | 文档的 ID。 |
_version | 文档的版本。 |
_result | 删除操作的结果。 |
_shards | 关于集群分片的详细信息。 |
总计 | 分片总数。 |
成功 | OpenSearch 成功从中删除文档的分片数量。 |
失败 | OpenSearch 未能从中删除文档的分片数量。 |
_seq_no | 文档索引时分配的序列号。 |
_primary_term | 文档索引时分配的主词。 |