開始使用 Databricks SDK

使用 Python SDK 的 Databricks

Avi Steinberg

Software/Data Engineer

為何學 Databricks?

大頭照

  • 領先的 ML、AI 與資料工程雲端平台
  • 超過 60%《財星》500 大公司使用

Databricks 標誌

1 https://www.databricks.com/company/newsroom/press-releases/databricks-raising-10b-series-j-investment-62b-valuation
使用 Python SDK 的 Databricks

什麼是 Databricks Workspace?

  • 在雲端部署 Databricks 資源
  • 存取 Databricks 資產的環境
  • Workspace 範例資產:jobs、clusters、notebooks
使用 Python SDK 的 Databricks

安裝 Databricks SDK

安裝 SDK

pip install databricks-sdk

建立 WorkspaceClient

from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
1 https://docs.databricks.com/en/dev-tools/sdk-python.html#language-venv
使用 Python SDK 的 Databricks

驗證用環境變數

  • 環境變數=設定應用程式行為的 key/value 配對

  • DATABRICKS_CLIENT_SECRET

  • DATABRICKS_CLIENT_ID
  • DATABRICKS_HOST=<workspace_id>.cloud.databricks.com

Databricks Workspace 網頁 URL 螢幕擷取畫面

使用 Python SDK 的 Databricks

使用 Service Principal 驗證

  • Service Principal=雲端平台中代表應用程式的安全性身分

  • 建立 Service Principal

  • 指派 Service Principal 權限
  • 產生 Service Principal 的密碼

Databricks Workspace Service Principal 的 Secrets 頁面圖片

1 https://docs.databricks.com/en/dev-tools/auth/oauth-m2m.html#step-1-create-a-service-principal
使用 Python SDK 的 Databricks

預設驗證

from databricks.sdk import WorkspaceClient
import os

os.environ['DATABRICKS_CLIENT_SECRET'] = "Your-Client-Secret"
os.environ['DATABRICKS_CLIENT_ID'] = "Your-Databricks-Client-Id"
os.environ['DATABRICKS_HOST'] = "Your-Databricks-Host"
w = WorkspaceClient()
  • 自動讀取以上三個環境變數的值
使用 Python SDK 的 Databricks

與 Databricks Workspace 互動

# Authenticate WorkspaceClient
from databricks.sdk import WorkspaceClient
import os
os.environ['DATABRICKS_CLIENT_SECRET'] = "Your-Client-Secret"
os.environ['DATABRICKS_CLIENT_ID'] = "Your-Databricks-Client-Id"
os.environ['DATABRICKS_HOST'] = "Your-Databricks-Host"
w = WorkspaceClient()

# Create Cluster: cluster = w.clusters.create(cluster_name="Test-Cluster")
# List Clusters: for cluster in w.clusters.list(): print(f"Clusters Name: {cluster.cluster_name}")
Clusters Name: Test-Cluster
1 https://databricks-sdk-py.readthedocs.io/en/latest/clients/workspace.html
使用 Python SDK 的 Databricks

一起來練習吧!

使用 Python SDK 的 Databricks

Preparing Video For Download...