メインコンテンツまでスキップ
バージョン: User Guides (Cloud)

コレクションの変更

コレクションの名前を変更したり、設定を変更できます。このページでは、コレクションを変更する方法に焦点を当てています。

コレクション名の変更

以下のようにして、コレクションの名前を変更できます。

from pymilvus import MilvusClient

client = MilvusClient(
uri="YOUR_CLUSTER_ENDPOINT",
token="YOUR_CLUSTER_TOKEN"
)

client.rename_collection(
old_name="my_collection",
new_name="my_new_collection"
)

コレクションプロパティの設定

コレクションが作成された後も、コレクションレベルのプロパティを変更できます。

サポートされるプロパティ

プロパティ

説明

collection.ttl.seconds

コレクションのデータを特定の期間後に削除する必要がある場合は、秒単位でのTime-To-Live(TTL)を設定することを検討してください。TTLがタイムアウトすると、Zilliz Cloudはコレクションからすべてのエンティティを削除します。

削除は非同期であるため、削除が完了する前までは検索およびクエリが可能です。

詳細については、コレクションTTLの設定を参照してください。

mmap.enabled

メモリマッピング(Mmap)により、ディスク上の大きなファイルへの直接メモリアクセスが可能になり、Zilliz Cloudはインデックスとデータをメモリとハードディスクの両方に保存できます。このアプローチにより、アクセス頻度に基づいたデータ配置ポリシーを最適化し、検索パフォーマンスに影響を与えることなくコレクションのストレージ容量を拡張できます。

Zilliz Cloudはクラスター用のグローバルmmap設定を実装しています。特定のフィールドまたはそのインデックスで設定を変更できます。

詳細については、mmapの使用を参照してください。

partitionkey.isolation

パーティションキー分離が有効な場合、Zilliz Cloudはパーティションキー値に基づいてエンティティをグループ化し、これらのグループごとに個別のインデックスを作成します。検索リクエストを受信すると、Zilliz Cloudはフィルタリング条件で指定されたパーティションキー値に基づいてインデックスを特定し、そのインデックスに含まれるエンティティのみの範囲内で検索スコープを制限し、検索中に無関係なエンティティをスキャンすることを避け、検索パフォーマンスを大幅に向上させます。

詳細については、パーティションキー分離の使用を参照してください。

dynamicfield.enabled

元から有効に設定されていなかったコレクションに対して、動的フィールドを有効にします。有効にすると、元のスキーマに定義されていないフィールドを持つエンティティを挿入できます。詳細については、動的フィールドを参照してください。

例1:コレクションTTLの設定

以下のコードスニペットは、コレクションTTLを設定する方法を示しています。

from pymilvus import MilvusClient

client.alter_collection_properties(
collection_name="my_collection",
properties={"collection.ttl.seconds": 60}
)

例2:mmapの有効化

以下のコードスニペットは、mmapを有効にする方法を示しています。

from pymilvus import MilvusClient

client.alter_collection_properties(
collection_name="my_collection",
properties={"mmap.enabled": True}
)

例3:パーティションキーの有効化

以下のコードスニペットは、パーティションキーを有効にする方法を示しています。

from pymilvus import MilvusClient

client.alter_collection_properties(
collection_name="my_collection",
properties={"partitionkey.isolation": True}
)

例4:動的フィールドの有効化

以下のコードスニペットは、動的フィールドを有効にする方法を示しています。

from pymilvus import MilvusClient

client.alter_collection_properties(
collection_name="my_collection",
properties={"dynamicfield.enabled": True}
)

コレクションプロパティの削除

以下のようにして、プロパティを削除することでコレクションプロパティをリセットすることもできます。

client.drop_collection_properties(
collection_name="my_collection",
property_keys=[
"collection.ttl.seconds"
]
)