重要
索引别名目前根据补充使用条款以公共预览版提供。
Azure AI 搜索中的索引别名是索引的备用名称。 可以使用别名而不是应用程序中的索引名称,从而最大程度地减少对生产代码的未来更新。 如果需要切换到较新的索引,可以更新别名映射。
在使用别名之前,应用程序会将请求直接发送到 hotel-samples-index
。
POST /indexes/hotel-samples-index/docs/search?api-version=2025-05-01-preview
{
"search": "pool spa +airport",
"select": "HotelId, HotelName, Category, Description",
"count": true
}
使用别名后,应用程序会向my-alias
发送请求,而my-alias
映射到。
POST /indexes/my-alias/docs/search?api-version=2025-05-01-preview
{
"search": "pool spa +airport",
"select": "HotelId, HotelName, Category, Description",
"count": true
}
支持的方案
只能将别名用于文档操作,或用于获取和更新索引定义。
别名不能用于删除索引,或用于测试文本标记化,也不能被作为targetIndexName
引用在索引器上。
创建索引别名
可以使用预览版 REST API、预览版 SDK 或通过 Azure 门户创建别名。 别名包含别名的 name
,以及别名映射到的搜索索引的名称。 在 indexes
数组中只能指定一个索引名称。
可以使用创建或更新别名(REST 预览)创建索引别名。
POST /aliases?api-version=2025-05-01-preview
{
"name": "my-alias",
"indexes": ["hotel-samples-index"]
}
将请求发送到索引别名
别名可用于所有文档操作,包括查询、编制索引、建议和自动完成。
此查询将请求发送到my-alias
,该请求映射到搜索服务的实际索引上。
POST /indexes/my-alias/docs/search?api-version=2025-05-01-preview
{
"search": "pool spa +airport",
"searchMode": any,
"queryType": "simple",
"select": "HotelId, HotelName, Category, Description",
"count": true
}
更新别名
别名更新必须使用 PUT,如 创建或更新别名(REST 预览版)中所述。
PUT /aliases/my-alias?api-version=2025-05-01-preview
{
"name": "my-alias",
"indexes": ["hotel-samples-index2"]
}
对别名进行的更新可能需要 10 秒才能在系统中传播,因此在删除别名之前映射到的索引之前,应等待至少 10 秒钟。