Batch API 與工具概觀

使用 Azure Batch 處理平行工作負載通常是透過使用其中一種 Batch API 以程式化方式來完成。 您的用戶端應用程式或服務可以使用 Batch API 與 Batch 服務進行通訊。 透過 Batch API,您可以建立及管理計算節點的集區,這些節點可以是虛擬機器或雲端服務。 接著,您可以排程作業與工作在這些節點上執行。

您可以為組織高效率地處理大規模工作負載,或為客戶提供服務前端,讓他們能夠依需求或依排程,在一個、數百個,甚至數千個節點上執行作業與工作。 您也可以在 Azure Data Factory 之類的工具所管理的大型工作流程中使用 Azure Batch。

秘訣

若要深入了解 Azure Batch 中使用的功能和工作流程,請參閱 Batch 服務工作流程和資源

用於 Batch 開發的 Azure 帳戶

在開發 Batch 解決方案時,您會在 Azure 訂用帳戶中使用下列帳戶:

  • Batch 帳戶:Azure Batch 資源 (包括集區、計算節點、作業與工作) 都會與一個 Azure Batch 帳戶相關聯。 當您的應用程式對 Batch 服務提出要求時,可以使用 Azure Batch 帳戶名稱、帳戶的 URL 及存取金鑰或 Microsoft Entra 權杖,來驗證此要求。 您可以在 Azure 入口網站中或以程式設計方式建立 Batch 帳戶
  • 儲存體帳戶:Batch 包含內建支援,可處理 Azure 儲存體中的檔案。 幾乎所有 Batch 使用情境都會使用 Azure Blob 儲存體,用於暫存工作所執行的程式與其處理的資料,以及儲存這些工作所產生的輸出資料。 每個 Batch 帳戶通常都會與對應的儲存體帳戶相關聯。

服務等級和管理等級 API

Azure Batch 提供兩組 API:一組用於服務層級,另一組用於管理層級。 這兩組 API 的命名經常相似,但回傳的結果不同。

只有透過管理 API 所執行的動作,才會記錄在活動記錄中。 服務層級 API 會略過 Azure Resource Manager (management.azure.com) 層,因此不會被記錄。

例如,用於刪除集區的 Batch 服務 API 會直接針對 Batch 帳戶執行:DELETE {batchUrl}/pools/{poolId}

相較之下,用於刪除集區的 Batch 管理 API 則是針對 management.azure.com 層級執行:DELETE https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Batch/batchAccounts/{accountName}/pools/{poolName}

Batch 服務 API

您的應用程式與服務可以直接呼叫 REST API,或使用下列一種或多種用戶端程式庫來執行與管理 Azure Batch 的工作負載。

API API 參考資料 下載 教學課程 程式碼範例 其他資訊
批次 REST Azure REST API - 文件 N/A - - 支援版本
Batch .NET SDK 適用於 .NET 的 Azure SDK - 文件 NuGet 教學課程 GitHub 版本資訊
Batch Python SDK 適用於 Python 的 Azure SDK - 文件 PyPI 教學課程 GitHub 讀我檔案
批次 JavaScript 適用於 JavaScript 的 Azure SDK - 文件 npm 教學課程 - 讀我檔案
批次 Java 適用於 Java 的 Azure SDK - 文件 Maven - GitHub 讀我檔案

Batch 管理 API

Batch 的 Azure Resource Manager API 可提供對 Batch 帳戶的程式化存取。 透過這些 API,您可以經由 Microsoft.Batch 資源提供者,以程式化方式管理 Batch 帳戶、配額、應用程式套件及其他資源。

API API 參考資料 下載 教學課程 程式碼範例
Batch 管理 REST Azure REST API - 文件 - - GitHub
Batch Management .NET 適用於 .NET 的 Azure SDK - 文件 NuGet 教學課程 GitHub
Batch 管理 Python 適用於 Python 的 Azure SDK - 文件 PyPI - -
Batch 管理 JavaScript 適用於 JavaScript 的 Azure SDK - 文件 npm - -
Batch 管理 Java 適用於 Java 的 Azure SDK - 文件 Maven - -

Batch 命令列工具

這些命令列工具提供與 Batch 服務 API 與 Batch 管理 API 相同的功能:

其他用於應用程式開發的工具

以下其他工具可能有助於建置與偵錯您的 Batch 應用程式與服務。

  • Azure 入口網站︰您可以在 Azure 入口網站中建立、監視及刪除 Batch 集區、作業與工作。 在執行作業期間,您可以檢視這些及其他資源的狀態資訊,甚至還能從集區中的計算節點下載檔案。 例如,您可以在進行疑難排解時下載失敗的工作 stderr.txt。 您也可以下載遠端桌面 (RDP) 檔案,以用來登入計算節點。
  • Azure Batch Explorer:Batch Explorer 是一款免費、功能豐富的獨立用戶端工具,可協助建立、偵錯及監視 Azure Batch 應用程式。 下載適用於 Mac、Linux 或 Windows 的安裝套件
  • Azure 儲存體總管:雖然 Storage Explorer 並非嚴格意義上的 Azure Batch 工具,但在開發與偵錯 Batch 解決方案時仍相當實用。

其他資源

後續步驟