alter_alias()
Near Deprecation此操作会将一个 Collection 的别名重新分配给另一个 Collection。
请求语法
alter_alias(
collection_name: str,
alias: str,
using: str,
timeout: float | None
)
from pymilvus import utility
# Alter collection alias
alter_alias(
collection_name="string",
alias="string",
using="default"
)
参数:
-
collection_name (str) -
[必需]
要重新分配别名的目标 Collection 的名称。
-
alias (str) -
[必需]
Collection 的别名。请注意,该别名应事先存在。
Note什么是 Collection 别名?
Collection 别名是 Collection 的附加名称。当您希望在不更改代码的情况下将应用程序切换到新的 Collection 时,Collection 别名会很有用。
在 中, Collection 别名是全局唯一标识符。一个别名只能且仅能分配给一个 Collection。反之,一个 Collection 可以有多个别名。
以下是将一个 Collection 的别名重新分配给另一个 Collection 的示例:
假设有两个 Collection:
collection_1和collection_2。此外,还有一个名为bob的 Collection 别名,它原本分配给collection_1:-
collection_1的别名 = ["bob"] -
collection_2的别名 = []
调用
alter_alias("collection_2", "bob")后:-
collection_1的别名 = [] -
collection_2的别名 = ["bob"]
-
-
using (str) -
所使用连接的别名。
默认值为 default,表示此操作使用默认连接。
-
timeout (float | None)
此操作的超时时长。将其设置为 None 表示当收到任意响应或发生任意错误时,此操作即超时。
返回类型:
NoneType
返回值:
None
异常:
-
MilvusException
当此操作期间发生任何错误时,将引发此异常,尤其是在指定的别名不存在时。
示例
from pymilvus import connections, Collection, utility
# Connection to YOUR_CLUSTER_ENDPOINT
connections.connect()
# Get two existing collections
collection_1 = Collection("collection_1")
collection_2 = Collection("collection_2")
# Create an alias for collection_1
utility.create_alias(collection_name="collection_1", alias="bob")
# List aliases for both collections
utility.list_aliases(collection_name="collection_1") # ['bob']
utility.list_aliases(collection_name="collection_2") # []
# Reassigns the alias to collection_2
utility.alter_alias(collection_name="test_collection_2", alias="bob")
# List aliases for both collections
utility.list_aliases(collection_name="collection_1") # []
utility.list_aliases(collection_name="collection_2") # ['bob']
相关操作
以下操作与 alter_alias() 相关: