搜索索引是不可变的,这意味着如果需要更新索引,通常需要删除并重新生成索引或创建新索引,然后迁移应用程序。像这样交换搜索索引会增加管理搜索索引的复杂性,如果最终需要在多个位置更新应用程序设置或需要重新部署代码,则可能会很困难。

为了帮助更轻松地交换索引,Azure 认知搜索现在支持预览版提供的索引别名。别名是辅助名称,可用于引用索引以进行查询、索引和其他文档操作。您可以通过 REST APIVisual Studio Code 扩展SDK 创建别名。

POST https://[service name].search.windows.net/aliases?api-version=2021-04-30-Preview

1
2
3
4
{
   "name": "my-alias",
   "indexes": ["hotel-samples-index"]
}

如果您发现自己相当频繁地更新搜索索引,则可能会从使用别名中受益。下图显示了在应用程序中使用索引别名的典型工作流。 image

包含以下 API 的所有文档操作都支持索引别名:

要开始使用,请查看有关如何创建索引别名的文档。