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

プライマリフィールドとAutoID

プライマリフィールドはエンティティを一意に識別します。このページでは、2つの異なるデータ型のプライマリフィールドを追加する方法と、Zilliz Cloudを有効にしてプライマリフィールドの値を自動的に割り当てる方法を紹介します。

概要について

コレクションでは、各エンティティの主キーはグローバルに一意である必要があります。主フィールドを追加する場合は、明示的にデータ型をVARCHARまたはINT64に設定する必要があります。データ型をINT64に設定すると、主キーは12345に似た整数である必要があります。データ型をVARCHARに設定すると、主キーはmy_entity_1234に似た文字列である必要があります。

また、AutoIDを有効にして、Zilliz Cloudが受信するエンティティのプライマリキーを自動的に割り当てるようにすることもできます。コレクションでAutoIDを有効にしたら、エンティティを挿入する際にプライマリキーを含めないようにしてください。

コレクション内のプライマリフィールドにはデフォルト値がなく、nullにすることはできません。

Int 64プライマリキーを使用

Int 64型のプライマリキーを使用するには、datatypeDataType.INT64に設定し、is_primarytrueに設定する必要があります。受信するエンティティのプライマリキーを割り当てるためにZilliz Cloudも必要な場合は、auto_idtrueに設定してください。

from pymilvus import MilvusClient, DataType

schema = MilvusClient.create_schema()

schema.add_field(
field_name="my_id",
datatype=DataType.INT64,
is_primary=True,
auto_id=True,
)

VarCharプライマリキーを使用する

VarCharプライマリキーを使用するには、datatypeパラメータの値をDataType.VARCHARに変更するだけでなく、フィールドのmax_lengthパラメータも設定する必要があります。

schema.add_field(
field_name="my_id",
datatype=DataType.VARCHAR,
is_primary=True,
auto_id=True,
max_length=512,
)