Databricks 沙盒

Important

這項功能位於 測試版 (Beta) 中。 要在工作區中啟用此功能預覽,請在工作區預覽頁面中選擇 Databricks 沙盒 設定。 請參閱 管理 Azure Databricks 預覽。

Databricks 目前不對使用此功能收費。 不過,Beta 版功能的費用與定價可能會有所變動。

Databricks 沙盒讓你能透過 Databricks REST API、SDK 或 Databricks CLI 在隔離環境中執行不受信任的程式碼。 沙盒提供無伺服器、隨需提供的運算資源,以便動態執行程式碼。

每個沙盒都包含一個持久的主目錄。 你可以隨時停止或啟動沙盒,且你家目錄中的資料會持續存在。

沙箱最適合用於:

  • 使用特工安全帶。
  • 執行使用者撰寫或 AI 撰寫的程式碼。
  • 執行背景任務或工作程序。
  • 啟動互動式 IDE 或 SSH 會話。

先決條件

快速入門

先從建立一個沙盒開始,只需幾行程式碼:

from databricks.sdk import WorkspaceClient
from databricks.sdk.service.sandbox import Sandbox

w = WorkspaceClient()

created = w.sandbox.create_sandbox(
    sandbox=Sandbox(),
    sandbox_id="my-sandbox",
)
print(created.name)   # "sandboxes/my-sandbox"

想完整了解如何建立沙盒、執行指令以及管理其生命週期,請參考 「用 SDK 建立並管理沙盒」。

計算大小

Databricks Sandbox 配備 4 顆 vCPU 和 8 GB 記憶體。 這個尺寸無法設定。

儲存體

Warning

Beta 期間結束時,Databricks 可能會一次性清除沙盒中儲存的資料。 不要存放任何你無法承受失去的東西。

Databricks Sandbox 附帶網路附加儲存裝置。

  • 你家目錄(/home/sandbox-agent)中的資料會在 Databricks Sandbox 的整個存續期間內持續保留。 即使停止 Databricks Sandbox,在你開始下一個工作階段時,主目錄中的資料仍可使用。
  • 你的家庭目錄最多可儲存 100 GB。 目前,這一點無法改變。
  • 你可以在家目錄外儲存最多 10 GB,但當你停止沙盒時,這些資料會被刪除。

網路

沙盒網路出口沒有限制,且出口功能無法設定。

使用成本

完整的帳單使用資訊,請參閱 Databricks 定價。 Databricks 預計將對下列項目的沙盒使用量計費:

  • 執行時運算:在 Databricks 沙盒運行時按小時計費。
  • 持久儲存:在 Databricks 沙盒被刪除之前,你會為儲存在家目錄中的資料收費。 只要 Databricks 沙盒實例存在,儲存裝置就會產生計費。 要停止支付儲存費用,你必須刪除沙盒。
  • 資料傳輸

建議使用 Databricks SDK for Python 來存取沙盒。 請參閱 Databricks SDK for Python 沙盒參考資料以獲得可用指令,以及使用 SDK 建立與管理沙盒作為範例。

透過 CLI 存取沙盒

你也可以透過 SSH 存取你的沙盒。 這對於執行較長的代理任務很有用,且不需要本地機器持續運作。 例如,您可以:

  • 透過 SSH 直接從 Databricks CLI 控制你的程式設計代理。
  • 連接桌面版 IDE 或代理執行框架,例如 Cursor、Claude 或 Codex。

要建立沙盒並使用 Databricks CLI 連接,請執行:

databricks sandbox create      # create your sandbox
databricks sandbox register    # optional: register SSH keys
databricks sandbox ssh         # SSH to your default sandbox

當你用 SSH 進入沙盒時,Databricks 的 CLI 會被安裝並認證到沙盒正在執行的 Databricks 工作區。 你也可以設定 Git 憑證。 請參閱 將您的 Git 提供者連接至 Databricks。

如需詳細指令協助,請執行 databricks sandbox -h,或參見 sandbox 指令群組。

當你第一次透過 SSH 連線至沙盒時,如果你的工作區已設定 AI Gateway,Databricks 會自動將 Claude 和 Codex 等常見的程式設計工具設定為使用 AI Gateway。 欲了解更多資訊,請參閱建立與管理模型 API(模型服務)。

託管式 Omnigent

Managed Omnigent 使用 Databricks Sandbox 作為執行後端。 欲了解更多資訊,請參閱 Databricks 上的 Omnigent。

局限性

  • 配額制度被執行。 每位使用者最多只能有 40 個活躍沙盒(所有州合計 400 個),工作區最多只能有 100 個活躍沙盒(總共 1,000 個)。
  • Databricks Sandbox 是用於執行程式碼的計算原語,而非通用的 Spark 執行時。 若為 Spark 工作負載,請使用 連線至無伺服器運算。
  • 你的 Databricks 沙盒的公開 IP 位址隨時可能變更。 沙盒的預設入口對所有流量關閉。 此點目前無法更改。
  • 你無法在啟動時自訂環境,也無法持久化主目錄以外的環境。 若要在不同會話間重複使用套件或設定,請將它們儲存在你的家庭目錄中。