メインコンテンツまでスキップ

コレクションフィールドの変更

コレクションフィールドのプロパティを変更して、列の制約を変更したり、より厳格なデータ整合性ルールを適用したりできます。

このページでは、フィールドの追加や削除のようなスキーマ形状の変更ではなく、フィールドプロパティの変更について説明します。既存のコレクションにスカラーフィールドを追加したり、フィールドを削除したりするには、コレクションスキーマの変更 を参照してください。

Notes
  • 各コレクションは 1 つのプライマリフィールドのみで構成されます。コレクション作成時に設定すると、プライマリフィールドを変更したり、そのプロパティを変更したりすることはできません。

  • 各コレクションが持てるパーティションキーは 1 つだけです。コレクション作成時に設定すると、パーティションキーを変更することはできません。

VarChar フィールドの変更​

VarChar フィールドには max_length というプロパティがあり、フィールド値に含められる最大文字数を制限します。max_length プロパティは変更できます。

次の例では、コレクションに varchar という名前の VarChar フィールドが存在することを前提として、その max_length プロパティを設定します。

python
from pymilvus import MilvusClient

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

client.alter_collection_field(
collection_name="my_collection",
field_name="varchar",
field_params={
"max_length": 1024
}
)

ARRAY フィールドの変更​

array フィールドには element_type と max_capacity の 2 つのプロパティがあります。前者は array 内の要素のデータ型を決定し、後者は array に含められる要素の最大数を制限します。変更できるのは max_capacity プロパティのみです。

次の例では、コレクションに array という名前の array フィールドが存在することを前提として、その max_capacity プロパティを設定します。

python
client.alter_collection_field(
collection_name="my_collection",
field_name="array",
field_params={
"max_capacity": 64
}
)

フィールドレベルの mmap 設定の変更​

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

次の例では、コレクションに doc_chunk という名前のフィールドが存在することを前提として、その mmap_enabled プロパティを設定します。

python
client.alter_collection_field(
collection="my_collection",
field_name="doc_chunk",
properties={"mmap.enabled": True}
)