共用方式為


設定管線

本文說明使用工作區 UI 的管線基本設定。

Databricks 建議使用無伺服器開發新的管線。 如需無伺服器管線的設定指示,請參閱 設定無伺服器管線

本文中的組態指示使用 Unity 目錄。 如需使用舊版 Hive 中繼存放區設定管線的指示,請參閱 搭配舊版 Hive 中繼存放區使用 Lakeflow Spark 宣告式管線

本文討論管線目前預設發佈模式的功能。 在 2025 年 2 月 5 日之前建立的管線可能會使用傳統發佈模式,以及 LIVE 虛擬架構。 請參閱 LIVE 架構(舊版)。

備註

UI 有選項可在 JSON 中顯示和編輯設定。 您可以使用UI或 JSON 規格來設定大部分的設定。 某些進階選項只能使用 JSON 組態。

將管線部署到新環境或使用 CLI 或 REST API時,JSON 組態檔也很有用。

如需管線 JSON 組態設定的完整參考,請參閱 管線組態

設定新的管線

若要設定新的管線,請執行下列動作:

  1. 在側邊欄的頂端,按一下 [加號] 圖示。新增,然後選取 [管線] 圖示。ETL 管線

  2. 請在開頭為您的流程指定一個唯一的名稱。

  3. 在名稱下,您可以看到已為您選擇的預設目錄和結構描述。 變更這些 ,為您的管線提供不同的預設值。

    當您未在程式代碼中使用目錄或架構來限定數據集時,預設 目錄 和預設 架構 是數據集讀取或寫入的位置。 如需詳細資訊,請參閱 Azure Databricks 中的資料庫物件

  4. 選取您偏好的選項來建立管線:

    • 從 SQL 中的範例程式代碼開始 ,以建立新的管線和資料夾結構,包括 SQL 中的範例程式代碼。
    • 從 Python 中的範例程式代碼 開始,以建立新的管線和資料夾結構,包括 Python 中的範例程式代碼。
    • 從單一轉換開始 ,使用新的空白程式代碼檔案來建立新的管線和資料夾結構。
    • 加入現有資產 以建立流程,您可以將其與工作區中的現有程式碼檔案相關聯。
    • 建立原始檔控制專案 ,以使用新的 Databricks 資產套件組合專案建立管線,或將管線新增至現有的套件組合。

    您可以在 ETL 管線中同時有 SQL 和 Python 原始碼檔案。 建立新的管線並選擇範例程式代碼的語言時,語言僅適用於管線中預設包含的範例程序代碼。

  5. 當您進行選取時,系統會將您重新導向至新建立的管線。

    ETL 管線會使用下列預設設定來建立:

    此組態建議用於許多使用案例,包括開發和測試,而且非常適合應該依排程執行的生產工作負載。 如需排程管線的詳細資訊,請參閱 作業的管線工作

    您可以從管線工具列調整這些設定。

或者,您可以從工作區瀏覽器建立 ETL 管線:

  1. 按兩下左側面板中的 [工作區 ]。
  2. 選取任何資料夾,包括 Git 資料夾。
  3. 按一下右上角的建立,然後按一下ETL 管線

您也可以從作業和管線頁面建立 ETL 管線:

  1. 在您的工作區中,點擊[工作流程] 圖示,然後在側邊欄中選擇作業和管線
  2. 新增 底下,按一下 ETL 管道

計算組態選項

Databricks 建議一律使用 增強式自動調整。 其他計算組態的預設值適用於許多管線。

無伺服器管線會移除計算組態選項。 如需無伺服器管線的設定指示,請參閱 設定無伺服器管線

使用下列設定來客製化計算配置:

  • 使用 叢集標籤 來協助監控與管線相關聯的成本。 請參閱 設定運算標籤
  • 設定 實例類型,以指定用來執行管線的虛擬機類型。 請參閱 選取實例類型以執行管線
    • 選取 Worker 類型, 針對在您的管線中配置的工作負載進行最佳化。
    • 您可以選擇性地選擇與您的工作角色不同的 驅動程式類型。 這在降低具有大型工作類型且驅動計算使用率低的管線成本方面很有幫助,或選擇較大的驅動類型以避免在許多小型工作類型的工作負載中遇到記憶體不足問題時很有用。

設定執行身分使用者

執行身分使用者可讓您變更管線用來執行的身分識別,以及它所建立或更新之資料表的擁有權。 這在建立管線的原始使用者已停用的情況下非常有用,例如,如果他們離開了公司。 在這些情況下,管線可能會停止運作,而其他人可能無法存取其發佈的資料表。 藉由更新管線以不同的身分識別 (例如服務主體) 執行,並重新指派已發佈資料表的擁有權,您可以還原存取權並確保管線繼續運作。 以服務主體身分執行管線被視為最佳實務,因為它們不會繫結至個別使用者,因此對於自動化工作負載來說,管線更安全、更穩定且可靠。

所需權限

對於進行變更的使用者:

  • CAN_MANAGE 管線的許可權
  • 服務主體上的CAN_USE角色 (如果將執行身分設定為服務主體)

針對執行身分使用者或服務主體:

  • 工作空間訪問:

    • 工作區存取 權限,可在工作區內操作
    • 可以使用 管線所使用的叢集原則的權限
    • 工作區中的計算建立權限
  • 原始碼存取:

    • 可以讀取 管線原始程式碼中包含的所有筆記本的許可權
    • 如果管線使用工作區檔案,則可以讀取工作區檔案的許可權
  • Unity 目錄許可權 (適用於使用 Unity 目錄的管線):

    • USE CATALOG 位於目標目錄中
    • USE SCHEMACREATE TABLE 在目標結構描述上
    • MODIFY 管線更新之現有資料表的權限
    • CREATE SCHEMA 權限(如果管線建立新的結構描述)
  • 舊版 Hive 中繼存放區許可權 (適用於使用 Hive 中繼存放區的管線):

    • SELECT 以及 MODIFY 目標資料庫和資料表的權限
  • 額外的雲端儲存存取權 (如適用):

    • 從來源儲存位置讀取的權限
    • 寫入目標儲存位置的權限

如何設定執行身分使用者

您可以透過管道監控頁面或管道編輯器的管道設定來設定 run-as 使用者。 若要從管線監控頁面變更使用者:

  1. 按一下 工作與管線 以開啟管線清單,然後選取您要編輯的管線名稱。
  2. 在pipline監控頁面上,按一下 設定
  3. Pipeline settings 側邊欄中,按一下 鉛筆圖示。 接著在執行身份旁邊的編輯。
  4. 在編輯小工具中,選取下列其中一個選項:
    • 您自己的用戶帳戶
    • 您擁有 CAN_USE 權限的服務主體
  5. 按下 [儲存] 以套用變更。

當您成功更新執行身分使用者時:

  • 管線身分識別會變更為在所有未來的執行中使用新的使用者或服務主體
  • 在 Unity 目錄管線中,管線所發佈資料表的擁有者會更新,以符合新的執行身分識別
  • 未來的管線更新將使用新執行身分識別的許可權和認證
  • 連續管線會自動使用新身分識別重新啟動。 觸發的管線不會自動重新啟動,而且執行身分變更可能會中斷作用中的更新

備註

如果執行身分更新失敗,您會收到錯誤訊息,說明失敗的原因。 常見問題包括服務主體的許可權不足。

其他設定考慮

下列組態選項也適用於管線:

  • 進階產品版本可讓您存取所有 Lakeflow Spark 宣告式管線功能。 您可以選擇使用 ProCore 產品版本來執行管線。 請參閱 選擇產品版本
  • 在生產環境中執行管線時,您可以選擇使用持續管線模式。 請參閱 觸發式與連續管線模式
  • 如果您的工作區尚未為 Unity Catalog 設定,或您的工作負載必須使用傳統的 Hive Metastore,請參閱 搭配傳統 Hive Metastore 使用 Lakeflow Spark 宣告性管線
  • 根據成功或失敗條件,新增電子郵件更新通知 。 請參閱 ,新增有關管線事件的電子郵件通知
  • 使用 [組態] 字段來設定管線的索引鍵/值組。 這些組態有兩個用途:
    • 設定您可以在原始碼中參考的任意參數。 請參閱管線使用參數
    • 設定管線參數和 Spark 組態。 請參閱 管線屬性參考
    • 設定 標籤。 標籤是管線的鍵值對,可在工作流程清單中看見。 管線標籤與計費無關。
  • 使用 預覽 通道來測試您的管線,以應對即將變更的 Lakeflow Spark 宣告式管線執行階段並試用新功能。

選擇產品版本

選取具有最適合您管線需求的 Lakeflow Spark 宣告式管線產品版本。 下列產品版本可供使用:

  • Core 執行串流資料匯入工作負載。 如果您的管線不需要進階功能,例如變更資料擷取 (CDC) 或 Lakeflow Spark 宣告式管線預期,請選取 Core 版本。
  • Pro 執行串流擷取和 CDC 工作負載。 Pro 產品版本支援所有 Core 功能,還有支援需要根據來源數據變化而更新資料表的工作負載。
  • Advanced 執行串流擷取工作負載、CDC 工作負載,以及需要預期之工作負載。 Advanced產品版本支援CorePro版本的功能,並包含符合 Lakeflow Spark 宣告式管線期待的資料品質限制。

您可以在建立或編輯管線時選取產品版本。 您可以為每個管線選擇不同的版本。 請參閱 Lakeflow Spark 宣告式管線產品頁面

注意:如果您的管線包含所選產品版本不支援的功能,例如預期,您會收到錯誤訊息,說明錯誤的原因。 然後,您可以編輯管線以選取適當的版本。

設定原始程式碼

您可以使用 Lakeflow 管線編輯器中的資產瀏覽器來設定定義管線的原始程式碼。 管線原始程式碼是在儲存在工作區檔案中的 SQL 或 Python 指令碼中定義的。 當您建立或編輯管線時,您可以新增一或多個檔案。 根據預設,管線原始程式碼位於管線根資料夾中的資料夾中 transformations

由於 Lakeflow Spark 宣告式管線會自動分析資料集相依性,以建構管線的處理圖表,因此您可以以任何順序新增原始程式碼資產。

如需使用 Lakeflow 管線編輯器的詳細資訊,請參閱 使用 Lakeflow 管線編輯器開發和偵錯 ETL 管線

管理使用 Python 之流程的外部依賴

管線支援在工作流程中使用外部相依項,例如 Python 套件和函式庫。 若要瞭解使用相依性的選項和建議,請參閱 管理管線的 Python 相依性

使用儲存在 Azure Databricks 工作區中的 Python 模組

除了在管線原始程式碼檔案中實作 Python 程式碼之外,您還可以使用 Databricks Git 資料夾或工作區檔案將程式碼儲存為 Python 模組。 當您在相同管線的多個管線或筆記本中使用通用功能時,將程式代碼儲存為 Python 模組特別有用。 若要瞭解如何搭配管線使用 Python 模組,請參閱 從 Git 資料夾或工作區檔案匯入 Python 模組