次の方法で共有


データベース インスタンスの作成と管理

Important

この機能は、westuswestus2eastuseastus2centralussouthcentralusnortheuropewesteuropeaustraliaeastbrazilsouthcanadacentralcentralindiasoutheastasiaの各リージョンのuksouth段階にあります。

OLTP ワークロードの使用を開始するには、Azure Databricks UI、API 呼び出し、Python SDK、または CLI を使用して、Lakebase Provisioned データベース インスタンスを作成します。

データベース インスタンスを作成する

推奨される既定値を使用してデータベース インスタンスを作成します。 インスタンス名を指定する必要があります (1 ~ 63 文字、文字、ハイフンのみ)。 作成者は、 databricks_superuser ロールを持つデータベース所有者です。

ほとんどのワークスペース ユーザーは、既定でデータベース インスタンスを作成できます。 アクセス許可の問題が発生した場合は、 データベース インスタンスのアクセス許可を参照してください。

UI

  1. ワークスペースのサイドバーで、[コンピューティング] をクリックします。
  2. Lakebase Provisioned タブをクリックします。
  3. [ データベース インスタンスの作成] をクリックします。
  4. データベース インスタンス名を入力します (1 ~ 63 文字、文字、ハイフンのみ)。
  5. Create をクリックしてください。

Python SDK

from databricks.sdk import WorkspaceClient
from databricks.sdk.service.database import DatabaseInstance

# Initialize the Workspace client
w = WorkspaceClient()

# Create a database instance
instance = w.database.create_database_instance(
    DatabaseInstance(
        name="my-database-instance",
        capacity="CU_1"
    )
)

print(f"Created database instance: {instance.name}")
print(f"Connection endpoint: {instance.read_write_dns}")

CLI

# Create a database instance
databricks database create-database-instance my-database-instance \
  --capacity CU_1

# Create with advanced options (using JSON for more complex parameters)
databricks database create-database-instance \
  --json '{
    "name": "my-database-instance",
    "capacity": "CU_2",
    "retention_window_in_days": 14
  }'

curl

データベース インスタンスを作成し、保持期間を指定します。

export PAT=<YOUR_PAT>
export INSTANCE_NAME="instance_name"

> curl -X POST --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://[your databricks workspace]/api/2.0/database/instances \
--data-binary @- << EOF
{
  "name": "$INSTANCE_NAME",
  "capacity": "CU_1",
  "retention_window_in_days": 14
}
EOF

詳細設定

作成中または作成後にインスタンスを編集して、これらの機能を構成することもできます。

特徴 Description
サーバーレス予算ポリシー サーバーレス使用量と課金を特定の予算に属性付けするための、データベース インスタンスの予算ポリシーを選択します。 カスタム タグを追加することもできます。
インスタンス サイズ ワークロードのパフォーマンス要件に合わせてコンピューティング リソースをスケーリングします (既定値は 2 CU)。
[復元] ウィンドウ ポイントインタイム リカバリーのリテンション期間 (2 ~ 35 日、既定では 7 日間) を設定します。
高可用性 運用ワークロードのビジネス継続性を確保するために、フェールオーバー ノードを追加します。
親から作成する 既存のデータベース インスタンスから書き込み時のコピークローンを作成します。

インスタンスを停止または開始する

データベース インスタンスを停止または開始するには、データベース インスタンスに対する CAN MANAGE 権限が必要です。 インスタンスを停止または開始するには、Azure Databricks UI、API 呼び出し、Python SDK、または CLI を使用します。

UI

  1. ワークスペースのサイドバーで、[コンピューティング] をクリックします。
  2. Lakebase Provisioned タブをクリックします。
  3. 停止または開始するデータベース インスタンスをクリックします。
  4. ページの右上隅にある [ 停止 ] または [開始 ] をクリックします。

Python SDK

from databricks.sdk import WorkspaceClient
from databricks.sdk.service.database import DatabaseInstance

# Initialize the Workspace client
w = WorkspaceClient()

# Stop a database instance
instance_name = "my-database-instance"
w.database.update_database_instance(
    name=instance_name,
    database_instance=DatabaseInstance(
        name=instance_name,
        stopped=True
    ),
    update_mask="*"
)
print(f"Stopped database instance: {instance_name}")

# Start a database instance
w.database.update_database_instance(
    name=instance_name,
    database_instance=DatabaseInstance(
        name=instance_name,
        stopped=False
    ),
    update_mask="*"
)
print(f"Started database instance: {instance_name}")

CLI

# Stop a database instance
databricks database update-database-instance my-database-instance \
  --json '{
    "stopped": true
  }'

# Start a database instance
databricks database update-database-instance my-database-instance \
  --json '{
    "stopped": false
  }'

curl

次の API 呼び出しは、データベース インスタンスを停止します。

-X PATCH --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://$WORKSPACE/api/2.0/database/instances/$INSTANCE_NAME \
--data-binary @- << EOF
{
  "stopped": true
}
EOF

次の API 呼び出しでは、データベース インスタンスが開始されます。

curl -X PATCH --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://$WORKSPACE/api/2.0/database/instances/$INSTANCE_NAME \
--data-binary @- << EOF
{
  "stopped": false
}
EOF

停止した場合の動作

データベース インスタンスの動作:

  • データは保持されます。
  • インスタンスを読み取り操作または書き込み操作に使用することはできません。
  • 同期されたテーブルは 読み取りを処理しません。
  • Lakeflow Spark 宣言パイプライン (NSG) は停止したインスタンスを検出せず、エラーを返す可能性があります。
  • 停止したインスタンスに登録されたカタログは、UI にスキーマの詳細を表示しません。

機能上の制限事項:

  • DatabaseTablesまたはDatabaseCatalogsを作成または削除することはできません。
  • 停止したインスタンスを削除またはサイズ変更できます。 容量の変更は、インスタンスの再起動時に有効になります。
  • パイプラインを停止できます。

起動時の動作

  • インスタンスは STARTING 状態になり、準備ができたら AVAILABLE になります。

制限事項

  • LDPは停止したインスタンスを検出せず、エラーを返す可能性があります。
  • 停止したインスタンスに登録されたカタログは、UI にスキーマの詳細を表示しません。

インスタンスを削除する

データベース インスタンスを削除すると、関連付けられているすべてのデータが削除されるため、注意が必要です。

データベース インスタンスに対する CAN MANAGE 権限が必要です。 テーブルまたはカタログの所有者でない場合は、自分に所有権を再割り当てする必要があります。 ワークスペース管理者は、所有していないデータベース インスタンスを削除できます。

Databricks では、データベース インスタンスを削除する前に、関連付けられているすべての Unity カタログ カタログ、同期テーブル、および子インスタンスを削除することをお勧めします。 それ以外の場合、カタログを表示したり、カタログを参照する SQL クエリを実行しようとすると、エラーが発生します。

UI

  1. ワークスペースのサイドバーで、[コンピューティング] をクリックします。
  2. Lakebase Provisioned タブをクリックします。
  3. 削除するデータベース インスタンスを選択します。
  4. [ カタログ ] タブをクリックすると、データベース インスタンスに関連付けられているデータベース カタログの完全な一覧が表示されます。
  5. 各データベース カタログについて、同期されたすべてのテーブル (マネージド カタログにあり、データベース カタログとして登録されていないテーブルも含む) を削除します。
  6. [Kebab] メニュー アイコンを クリックします。>カタログを削除します

Python SDK

from databricks.sdk import WorkspaceClient

# Initialize the Workspace client
w = WorkspaceClient()

# Delete a database instance
instance_name = "my-database-instance"
w.database.delete_database_instance(
    name=instance_name,
    purge=True  # Required to delete the instance
)
print(f"Deleted database instance: {instance_name}")

# Delete with force option (to delete child instances too)
w.database.delete_database_instance(
    name=instance_name,
    force=True,  # Delete child instances too
    purge=True
)

CLI

# Delete a database instance
databricks database delete-database-instance my-database-instance \
  --purge

# Delete with force option (to delete child instances too)
databricks database delete-database-instance my-database-instance \
  --json '{
    "force": true,
    "purge": true
  }'

curl

purge=true は、データベース インスタンスを削除するために指定する必要があります。

curl -X DELETE --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://$WORKSPACE/api/2.0/database/instances/$INSTANCE_NAME?purge=true

データベース インスタンスのサーバーレス予算ポリシーを更新する

サーバーレス予算ポリシーは、ポリシーに割り当てられたユーザーによって発生するサーバーレス コンピューティング アクティビティに適用されるタグで構成されます。 使用状況ポリシーを使用してデータベース インスタンスにタグを付けることで、課金と使用コストを特定のポリシーに属性付けし、サーバーレス リソース全体の支出を簡単に追跡、管理、制御できます。

UI を使用して、データベース インスタンスの予算ポリシーを更新します。

  1. ワークスペースのサイドバーで、[コンピューティング] をクリックします。
  2. Lakebase Provisioned タブをクリックします。
  3. 課金ポリシーを更新するデータベース インスタンスを選択します。
  4. 右上の [編集] をクリックします。
  5. サーバーレス予算ポリシーを選択します。
  6. [保存] をクリックします。

次のステップ

制限事項と要件

次のセクションでは、マネージド データベース インスタンスの制限と構成要件について説明します。 インスタンスの作成と使用に関する制約については、「 制限事項と考慮事項」を参照してください。

インスタンス名の要件

  • 1 ~ 63 文字にする必要があります。
  • アルファベットで始める必要があります。
  • 英数字とハイフンのみを含めることができます。
  • 連続するハイフンを 2 つ含めることはできません。