子インスタンスの作成
プレビュー
この機能は、us-east-1
、us-west-2
、eu-west-1
、ap-southeast-1
、ap-southeast-2
、eu-central-1
、us-east-2
、ap-south-1
の各地域でパブリック プレビュー段階です。
このページでは、既存のLakebaseデータベースインスタンスから子インスタンスを作成する方法について説明します。
子インスタンスは、元のデータベース・インスタンスのコピー・オン・ライト・クローンです。これは、現在の時点から作成することも、保持期間内の履歴時点から作成することもできます。
リテンション期間は、ポイントインタイムリカバリを実行できる時間範囲を指定します。子インスタンスは、この保持期間内の任意の時点で、手動スナップショットやデータベースの完全エクスポートを待たずに作成できます。子インスタンスには、指定した時点で存在していたデータが含まれます。
子インスタンスの作成は、次のシナリオで役立ちます。
- 偶発的なデータ損失の回復: 昨日の午前 10 時 23 分にクリティカル テーブルが削除された場合は、午前 10 時 22 分に設定された子インスタンスを生成して、不足しているデータのみを抽出し、マージし直すことができます。
- テスト環境とQA環境: 過去X日間の任意の時点(保持期間で定義)から本番運用に似た環境をクローンして、スキーマの変更を検証したり、統合テストを実行したりします。
- コンプライアンスと監査: 過去の日付のデータベースの状態を反映する子インスタンスを、内部監査、財務調整、またはフォレンジック分析のためにプロビジョニングします。
ステップ 1: データベース インスタンスの保有期間を構成する
保持期間の有効な値は、2 日から 35 日です。デフォルトの期間は 7 日間です。データベース・インスタンスのリテンション・ウィンドウは、インスタンスの作成時に指定できます。データベース・インスタンスの作成を参照してください。
データベース・インスタンスの保持期間を変更するには、データベース・インスタンスを更新します。UI または API を使用して、次の手順を実行します。
- UI
- curl
- ワークスペースのサイドバーで「 コンピュート 」をクリックします。
- 「データベース・インスタンス 」タブをクリックします。
- 更新するデータベース・インスタンスを選択します。
- 右上隅の 「編集 」をクリックします。
- [復元期間 (日数)] で、保持期間の日数を設定します。
- 保存 をクリックします。
curl -s -X PATCH --header "Authorization: Bearer ${DATABRICKS_TOKEN}" $DBR_URL/database/instances/my-instance -d '{"retention_window_in_days": 14}'
ステップ 2: 子インスタンスを作成する
既存のデータベース・インスタンスから子インスタンスを作成できます。子インスタンスは、通常のデータベース・インスタンスと同様に管理できます。データベース・インスタンスの作成と管理を参照してください。
- UI
- curl
[親から作成 ] を有効にすると、次の 2 つの追加パラメーターがあります。
- 親インスタンス名: 子データベースの作成元となる親インスタンスの名前。
- 親から次のデータまでのデータを含めます。 データが必要な特定の過去の時点。
- 現在のポイント・イン・タイム: これにより、データベース・インスタンスの最新データを含む子インスタンスが作成されます。
- 具体的な日時: これにより、データベース・インスタンスのリテンション期間内の特定の時点で子インスタンスが作成されます。子インスタンスには、その特定の時点のすべてのデータが含まれています。
- 特定のログシーケンス番号: 保持ウィンドウ内の特定の先読みログ (WAL) ログ・シーケンス番号 (LSN) から子インスタンスを作成します。PostgreSQLはWALを使用してリカバリをサポートし、各WALレコードにLSNを割り当てます。子インスタンスには、その WAL LSN のすべてのデータが含まれています。Postgres のドキュメントを参照してください。
データベース・インスタンスの最新データを使用して子インスタンスを作成します。
curl -s -X POST --header "Authorization: Bearer ${DATABRICKS_TOKEN}" $DBR_URL/database/instances -d '{"name": "test", "capacity": "CU_2", "parent_instance_ref": {"name": "test-child"}}'
UTC で指定された特定の日時のデータを使用して子インスタンスを作成します。
curl -s -X POST --header "Authorization: Bearer ${DATABRICKS_TOKEN}" $DBR_URL/database/instances -d '{"name": "test", "capacity": "CU_2", "parent_instance_ref": {"name": "test-child", "branch_timestamp":"2025-05-23T17:21:00Z"}}'
データベースインスタンスの特定のWAL LSNからのデータを使用して子インスタンスを作成します。
curl -s -X POST --header "Authorization: Bearer ${DATABRICKS_TOKEN}" $DBR_URL/database/instances -d '{"name": "test", "capacity": "CU_2", "parent_instance_ref": {"name": "test-child", "branch_lsn":"0/2A156E"}}'
制限
- データベース・インスタンスに対して一度に作成できる子インスタンスは 1 つだけです。
- 親インスタンスは、子インスタンスを削除しない限り削除できません。