共用方式為


建立和管理資料庫實例

這很重要

這項功能在下列區域中處於公開預覽狀態:westus、、westus2eastuseastus2centralussouthcentralusnortheuropewesteuropeaustraliaeastbrazilsouthcanadacentralcentralindia、、 southeastasiauksouth

要開始使用 OLTP 工作負載,請使用 Azure Databricks 介面、API 呼叫、Python SDK 或 CLI 建立一個 Lakebase Provisioned 資料庫實例。

建立資料庫實例

建立具有建議預設值的資料庫執行個體。 您需要提供實例名稱(僅限 1-63 個字元、字母和連字號)。 身為建立者,您是具有角色 databricks_superuser 的資料庫擁有者。

依預設,大部分的工作區使用者都可以建立資料庫執行個體。 如果您遇到許可權問題,請參閱 資料庫執行個體許可權。

UI

  1. 在工作區側邊欄中按下 [計算]
  2. 點擊 Lakebase Provisioned 標籤。
  3. 按兩下 [建立資料庫實例]。
  4. 輸入資料庫實例名稱 (僅限 1-63 個字元、字母和連字號)。
  5. 點擊 建立

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 (Unix指令)

建立資料庫實例並指定保留視窗。

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 (Unix指令)

下列 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 宣告式管線 (LDP) 不會偵測到已停止的執行個體,而且可能會傳回錯誤。
  • 已停止實例上的已註冊目錄不會在UI中顯示架構詳細數據。

功能限制:

  • 您無法建立或移除 DatabaseTablesDatabaseCatalogs
  • 您可以刪除或調整已停止實體的大小。 當實例重新啟動時,容量變更就會生效。
  • 您可以停止管線。

啟動時的行為

  • 當實體進入 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 (Unix指令)

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 個字元。
  • 必須以字母開頭。
  • 只能包含字母和數字及連字號。
  • 不能包含兩個連續連字元。