跳到主要内容
版本:v2.5.x

管理别名

Milvus 提供别名管理功能。本页演示了创建、列出、更改和删除别名的程序。

别名概述

您可以为您的 Collection 创建别名。一个 Collection 可以有多个别名,但 Collection 不能共享一个别名。

在收到针对某个 Collection 的请求时,Milvus 会根据提供的名称定位该 Collection。如果所提供名称的 Collection 不存在,Milvus 会继续定位所提供名称的别名。你可以使用 Collection 别名来调整代码,以适应不同的情况。

创建别名

以下代码片段演示了如何为 Collection 创建别名。

from pymilvus import MilvusClient

client = MilvusClient(
uri="http://localhost:19530",
token="root:Milvus"
)

# 9. Manage aliases
# 9.1. Create aliases
client.create_alias(
collection_name="my_collection_1",
alias="bob"
)

client.create_alias(
collection_name="my_collection_1",
alias="alice"
)

列出别名

以下代码片段演示了列出分配给特定 Collection 的别名的过程。

# 9.2. List aliases
res = client.list_aliases(
collection_name="my_collection_1"
)

print(res)

# Output
#
# {
# "aliases": [
# "bob",
# "alice"
# ],
# "collection_name": "my_collection_1",
# "db_name": "default"
# }

描述别名

以下代码片段详细描述了特定别名,包括分配给该别名的 Collection 名称。

# 9.3. Describe aliases
res = client.describe_alias(
alias="bob"
)

print(res)

# Output
#
# {
# "alias": "bob",
# "collection_name": "my_collection_1",
# "db_name": "default"
# }

更改别名

您可以将已分配给特定 Collection 的别名重新分配给另一个 Collection。

# 9.4 Reassign aliases to other collections
client.alter_alias(
collection_name="my_collection_2",
alias="alice"
)

res = client.list_aliases(
collection_name="my_collection_2"
)

print(res)

# Output
#
# {
# "aliases": [
# "alice"
# ],
# "collection_name": "my_collection_2",
# "db_name": "default"
# }

res = client.list_aliases(
collection_name="my_collection_1"
)

print(res)

# Output
#
# {
# "aliases": [
# "bob"
# ],
# "collection_name": "my_collection_1",
# "db_name": "default"
# }

删除别名

下面的代码片段演示了删除别名的过程。

# 9.5 Drop aliases
client.drop_alias(
alias="bob"
)

client.drop_alias(
alias="alice"
)