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

Serving Clusters の Database

この機能は Enterprise プラン以上でのみ利用できます。

serving cluster の database は、Dedicated serving cluster でホストされる collection の論理コンテナです。このページでは、serving cluster エンドポイントを通じて database を作成、表示、設定、使用、削除する方法を説明します。

📘Note

このページは serving clusters の database を対象としています。オンデマンドコンピュートでクエリされる project レベルの database については、Database for On-Demand Search を参照してください。database モデルの比較については、Database Explained を参照してください。

始める前に

以下を確認してください。

  • Dedicated serving cluster を作成済みであること。

  • serving cluster エンドポイントを取得していること。例: https://{cluster-id}.{region}.vectordb.zillizcloud.com:19530

  • 認証トークンを取得していること。これは、対象 cluster にアクセスできる API key、または username:password 形式の cluster 認証情報です。

  • database を管理するための Organization Owner または Project Admin 権限を持っていること。

Dedicated cluster が作成されると、デフォルトの database が自動的に作成されます。Dedicated cluster には最大 1,024 個の database を作成できます。

Database を作成する

Zilliz Cloud コンソールから、またはプログラムで database を作成できます。

python
from pymilvus import MilvusClient

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

client.create_database(
db_name="my_database_1",
)

database の作成時にプロパティを設定することもできます。次の例では、レプリカ数を設定しています。

python
client.create_database(
db_name="my_database_2",
properties={
"database.replica.number": 3,
},
)

Database を表示する

database の一覧表示、または特定の database の詳細表示を行います。

python
databases = client.list_databases()
print(databases)

database = client.describe_database(
db_name="default",
)
print(database)

Database プロパティを管理する

以下の database プロパティは、serving clusters の database に対して設定できます。

PropertyDescription
database.replica.numberdatabase のレプリカ数。
database.max.collectionsdatabase で許可される collection の最大数。
database.force.deny.writingdatabase に対する書き込み操作を拒否するかどうか。
database.force.deny.readingdatabase に対する読み取り操作を拒否するかどうか。

Database プロパティを変更する

次の例では、database に作成できる collection 数を制限します。

python
client.alter_database_properties(
db_name="my_database_1",
properties={
"database.max.collections": 10,
},
)

Database プロパティを削除する

次の例では、database から collection の制限を削除します。

python
client.drop_database_properties(
db_name="my_database_1",
property_keys=[
"database.max.collections",
],
)

Database を使用する

SDK を使用している場合は、再接続せずに 1 つの database から別の database に切り替えることができます。

📘Note

RESTful API は、永続接続上での database 切り替えをサポートしていません。RESTful API リクエストでは、操作が dbName をサポートしている場合、各リクエストボディで対象 database を指定してください。

python
client.use_database(
db_name="my_database_2",
)

Database を削除する

デフォルトの database は削除できません。database を削除する前に、まずその database 内のすべての collection を削除してください。

python
client.drop_database(
db_name="my_database_2",
)

次のステップ

Ctrl I