共用方式為


計算組態建議

本文包含與計算組態相關的建議和最佳做法。

如果您的工作負載受支援,Databricks 建議使用無伺服器計算,而不是設定您自己的計算資源。 無伺服器計算是最簡單且最可靠的計算選項。 它不需要任何組態、永遠可使用,並根據您的工作負載進行縮放。 無伺服器計算是筆記本、任務和 Lakeflow Spark 宣告式管線的計算選項。 請參閱連線至無伺服器計算

此外,資料分析師可以使用無伺服器 SQL 倉儲來查詢和探索 Databricks 上的資料。 請參閱什麼是無伺服器 SQL 倉儲?

選擇適當的存取模式

傳統多用途和作業計算具有存取模式設定,可決定誰可以連接及使用計算資源。 在 Unity 目錄中,計算必須使用標準或專用存取模式。

標準運算可由多個使用者和群組共用,同時仍強制執行使用者隔離以及所有使用者和群組層級的資料存取權限。 這使得它成為大多數工作負載的更易於管理、經濟高效的選項,尤其是那些強制執行細粒度存取控制的工作負載。

如果您需要存取標準計算上無法使用的功能,例如 RDD API、GPU 執行個體、R 或 Databricks 容器服務,建議使用專用計算。 如需詳細資訊,請參閱 標準運算需求和限制

使用計算原則

如果您要從頭開始建立新的計算,則 Databricks 建議使用計算原則。 計算原則可讓您建立專為特定用途設計的預先設定的計算資源,例如個人計算、共用計算、進階使用者和工作。 原則會限制您在設定計算設定時必須做出的決策。

如果您沒有原則的存取權,請連絡您的工作區管理員。請參閱 默認原則和原則系列

評估您是否會從 Photon 中受益

許多工作負載都受益於 Photon,但它對於涉及複雜轉換的 SQL 工作負載和 DataFrame 操作最有利,例如大型表格上的聯結、聚合和資料掃描。 具有頻繁磁碟存取、寬資料表或重複資料處理的工作負載也會看到效能的改善。

不涉及廣泛轉換或大量資料的簡單批次 ETL 任務可能會因啟用 Photon 而產生最小的影響,特別是當查詢通常在兩秒鐘內完成時。

計算調整大小考量

注意

下列建議假設您的叢集建立不受限制。 工作區系統管理員應該只將此許可權授與進階使用者。

人們通常會就背景工作數目方面考量計算大小,但還有其他重要因素需要考量:

  • 執行程式的內核總數 (計算):所有執行程式的內核總數。 這決定了計算的平行處理原則上限。
  • 執行程式總記憶體數:所有執行程式的總 RAM 數量。 這決定了在將資料溢寫至磁碟之前,記憶體中可以儲存的資料量。
  • 執行程式本機儲存體:本機磁碟儲存體的類型和數量。 本機磁碟主要用於在隨機播放和快取期間的溢寫情況。

其他考量包括背景工作角色執行個體類型和大小,這也會影響上述因素。 調整計算大小時,請考慮下列事項:

  • 工作負載將消耗多少資料?
  • 工作負載的計算複雜度為何?
  • 您要從何處讀取資料?
  • 資料在外部儲存體中是如何分割的?
  • 需要多少平行處理原則?

回答這些問題有助於根據工作負載確定最佳計算組態。

工人數量與工作實例類型的大小之間需要平衡。 設定具有兩個背景工作角色 (每個背景工作角色具有 16 個核心和 128 GB RAM) 的計算,及設定具有 8 個背景工作角色 (每個背景工作角色具有 4 個核心和 32 GB RAM) 的計算具有相同的計算和記憶體。

計算組態範例

下列範例根據特定類型的工作負載顯示計算建議。 這些範例還包括要避免的組態,以及這些組態不適用於工作負載類型的原因。

注意

本節中的所有範例 (除了機器學習訓練之外) 都可以受益於使用無伺服器計算,而不是啟動新的計算資源。 如果您的工作負載在無伺服器上不受支援,請使用下列建議來協助設定計算資源。

資料分析

資料分析師通常執行需要來自多個分割的資料的處理,從而導致許多隨機作業。 具有較少數目的較大節點的計算資源可以減少執行這些隨機所需的網路和磁碟 I/O。

具有大型 VM 類型的單一節點計算可能是最佳選擇,尤其是對於單一分析師而言。

分析工作負載可能需要重複讀取相同的資料,因此建議的節點類型是在啟用磁碟快取後進行最佳化的儲存體或具有本機儲存體的執行個體。

建議用於分析工作負載的其他功能包括:

  • 啟用自動終止,以確保計算在非使用狀態期間之後終止。
  • 請考慮根據分析師的一般工作負載來啟用自動調整。

基本批次 ETL

對於不需要廣泛轉換 (例如聯結或彙總) 的簡單批次 ETL 任務,請使用記憶體和儲存需求較低的執行個體。 這可能會比其他背景工作角色類型節省成本。

複雜批次 ETL

對於複雜的 ETL 作業,例如需要跨多個數據表進行聯集和聯結的作業,Databricks 建議使用較少的工作節點以減少數據的交換量。 若要彌補人手不足,請增加實例的大小。

複雜的轉換可能會需要大量計算。 如果您發現嚴重的磁碟溢寫或 OOM 錯誤,請增加執行個體上的可用記憶體數量。

或者,使用集區來減少計算啟動時間,並減少執行工作管線時的總執行時間。

訓練機器學習模型

若要訓練機器學習模型,Databricks 建議使用個人計算原則建立計算資源。

您應使用具有大型節點類型的單一節點計算,透過訓練機器學習模型進行初始實驗。 擁有較少的節點可減少重新分配的影響。

新增更多背景工作角色有助於實現穩定性,但應避免由於隨機處理資料額外負荷而新增過多背景工作角色。

建議的背景工作角色類型是在啟用磁碟快取後進行最佳化的儲存體或具有本機儲存體的執行個體,以考慮對相同資料的重複讀取並啟用訓練資料的快取。

建議用於機器學習工作負載的其他功能包括:

  • 啟用自動終止,以確保計算在非使用狀態期間之後終止。
  • 使用集區,允許將計算限制為預先核准的執行個體類型。
  • 確保使用原則的計算組態一致。