删除同义词集
编辑删除同义词集编辑
删除同义词集。
请求编辑
DELETE _synonyms/<synonyms_set>
先决条件编辑
- 需要
manage_search_synonyms
集群权限。 - 您只能删除未被任何索引分析器使用的同义词集。有关更多信息,请参阅删除同义词集分析器要求。
路径参数编辑
-
<synonyms_set>
- (必填,字符串)要删除的同义词集标识符。
示例编辑
以下示例删除名为 my-synonyms-set
的同义词集
DELETE _synonyms/my-synonyms-set
删除同义词集分析器要求编辑
同义词集可用于同义词图标记过滤器和同义词标记过滤器。这些同义词过滤器可以用作搜索分析器的一部分。
在恢复索引时(例如,在节点启动或索引打开时),需要加载分析器。即使分析器未用于任何字段映射,也需要在索引恢复阶段加载它。
如果无法加载任何分析器,则索引将不可用,并且集群状态将变为红色或黄色,因为索引分片不可用。
为了防止这种情况,不能删除分析器中使用的同义词集。在这种情况下,删除请求将返回 400
响应代码,并显示以下错误消息
{ "error": { "root_cause": [ { "type": "illegal_argument_exception", "reason": "synonyms set [my-synonyms-set] cannot be deleted as it is used in the following indices: index-1, index-2", "stack_trace": ... } ], "type": "illegal_argument_exception", "reason": "synonyms set [my-synonyms-set] cannot be deleted as it is used in the following indices: index-1, index-2", "stack_trace": ... }, "status": 400 }
要删除同义词集,您必须首先删除包含使用它的分析器的所有索引。您可以通过创建一个不包含带有同义词集的标记过滤器的索引来迁移索引,并使用重新索引来复制索引数据。完成后,您可以删除该索引。
当分析器中未使用同义词集时,您将能够删除它。