Important
この機能は、、westus、westus2、eastus、eastus2、centralus、southcentralus、northeurope、westeurope、australiaeast、brazilsouth、canadacentral、centralindia、southeastasiaの各リージョンのuksouth段階にあります。
OLTP ワークロードの使用を開始するには、Azure Databricks UI、API 呼び出し、Python SDK、または CLI を使用して、Lakebase Provisioned データベース インスタンスを作成します。
データベース インスタンスを作成する
推奨される既定値を使用してデータベース インスタンスを作成します。 インスタンス名を指定する必要があります (1 ~ 63 文字、文字、ハイフンのみ)。 作成者は、 databricks_superuser ロールを持つデータベース所有者です。
ほとんどのワークスペース ユーザーは、既定でデータベース インスタンスを作成できます。 アクセス許可の問題が発生した場合は、 データベース インスタンスのアクセス許可を参照してください。
UI
- ワークスペースのサイドバーで、[コンピューティング] をクリックします。
- Lakebase Provisioned タブをクリックします。
- [ データベース インスタンスの作成] をクリックします。
- データベース インスタンス名を入力します (1 ~ 63 文字、文字、ハイフンのみ)。
- 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
- ワークスペースのサイドバーで、[コンピューティング] をクリックします。
- Lakebase Provisioned タブをクリックします。
- 停止または開始するデータベース インスタンスをクリックします。
- ページの右上隅にある [ 停止 ] または [開始 ] をクリックします。
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
- ワークスペースのサイドバーで、[コンピューティング] をクリックします。
- Lakebase Provisioned タブをクリックします。
- 削除するデータベース インスタンスを選択します。
- [ カタログ ] タブをクリックすると、データベース インスタンスに関連付けられているデータベース カタログの完全な一覧が表示されます。
- 各データベース カタログについて、同期されたすべてのテーブル (マネージド カタログにあり、データベース カタログとして登録されていないテーブルも含む) を削除します。
-
クリックします。>カタログを削除します。
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 を使用して、データベース インスタンスの予算ポリシーを更新します。
- ワークスペースのサイドバーで、[コンピューティング] をクリックします。
- Lakebase Provisioned タブをクリックします。
- 課金ポリシーを更新するデータベース インスタンスを選択します。
- 右上の [編集] をクリックします。
- サーバーレス予算ポリシーを選択します。
- [保存] をクリックします。
次のステップ
- 既存の Unity カタログ テーブルのデータを同期します。
- 外部ツール、SQL エディター、またはノートブックからデータベース インスタンスに接続してクエリを実行します。
- Unity カタログにデータベース インスタンスを登録します。
- 他のユーザーに Azure Databricks からデータベース インスタンスへのアクセスを許可します。 許可の管理 と Postgres ロールの管理を参照してください。
制限事項と要件
次のセクションでは、マネージド データベース インスタンスの制限と構成要件について説明します。 インスタンスの作成と使用に関する制約については、「 制限事項と考慮事項」を参照してください。
インスタンス名の要件
- 1 ~ 63 文字にする必要があります。
- アルファベットで始める必要があります。
- 英数字とハイフンのみを含めることができます。
- 連続するハイフンを 2 つ含めることはできません。