宣告式自動化套件可直接在工作區中建立與修改。
關於在工作區中使用軟件包的要求,請參見工作區需求中的宣告式自動化軟件包。
欲了解更多關於套件的資訊,請參閱「 什麼是宣告式自動化套件?」。
建立一個組合包
若要在 Databricks 工作區中建立套件組合:
流覽至您要在其中建立套件組合的 Git 資料夾。
按一下 建立 按鈕,然後按一下 套件組合。 或者,在工作區樹中右鍵點擊 Git 資料夾或其對應的烤肉串,然後點 選「建立>套件」:
在 「建立套件組合」對話方塊中,為套件組合命名,例如 totally-awesome-bundle。 套件組合名稱只能包含字母、數位、虛線和底線。
在 Template 中,選擇您要建立的套件類型:使用自訂範本的套件、空白套件、執行範例 Python 筆記本的套件,或執行 SQL 的套件。 如果您已啟用 Lakeflow 管線編輯器 ,您也會看到建立 ETL 管線專案的選項。 工作區中 設定的任何自訂範本 也會提供。
某些範本需要額外的設定。 按一下 下一步 以完成專案的設定。
Template 設定選項 湖流量管線 - 用於管線資料的預設目錄
- 針對在此套件組合上共同作業的每個使用者使用個人結構描述(建議)
- 管線中程式碼檔案的初始語言
預設 Python - 包含範例筆記本
- 包含範例管線
- 包含範例 Python 套件
- 使用無伺服器運算
預設 SQL - SQL 倉儲路徑
- 初始目錄
- 使用個人模式
- 開發期間的初始結構描述
按一下 建立並部署。
這會在 Git 資料夾中建立一個初始套件,裡面包含你所選擇的專案範本檔案、 .gitignore 一個 Git 設定檔,以及所需的宣告式自動化套件檔案 databricks.yml 。 檔案 databricks.yml 包含套件組合的主要組態。 詳情請參閱 宣告式自動化套件組(Declarative Automation Bundles)設定。
對套件組合內檔案所做的任何變更,都可以與與 Git 資料夾相關聯的遠端存放庫同步處理。 Git 資料夾可以包含許多套件組合。
將新檔案新增至套件組合
套件包含databricks.yml定義部署與工作空間設定的檔案、原始碼檔案(如筆記本、Python 檔案及測試檔案),以及 Databricks 資源(如 Lakeflow 工作與 Lakeflow 管線)的定義與設定。 與任何工作區資料夾類似,您可以將新的檔案新增至套件組合。
小提示
若要開啟套件組合檢視的新索引標籤,可讓您修改套件組合檔案,請流覽至工作區中的套件組合資料夾,然後按兩下套件組合名稱右側的 [ 在編輯器中開啟 ]。
新增原始碼檔案
若要將新的筆記本或其他檔案新增至工作區 UI 中的套件組合,請流覽至套件組合資料夾,然後:
- 請按一下位於右上角的 建立,然後選擇下列其中一種文件類型以新增至您的套件組合:筆記本、檔案、查詢、儀錶板。
- 或者,按兩下 共用 左側的Kebab並匯入檔案。
備註
為了讓檔案成為套件組合部署的一部分,將檔案新增至套件組合資料夾之後,您必須將它新增至 databricks.yml 套件組合組態,或建立包含該套件的作業或管線定義檔案。 請參閱 將現有的資源新增至套件組合。
建立資源定義
套件組合包含用於部署的資源定義,例如作業和流水線。 當套件部署時,套件中定義的資源會在工作空間中建立(若已部署則更新)。 這些定義是在 YAML 或 Python 中指定,您可以直接在 UI 中建立和編輯這些組態。
前往工作區中想要定義新資源的 bundle 資料夾。
小提示
如果你之前在工作區的編輯器中開啟過該套件,它會顯示為一個空格。 參見 「空格」。
在套件組合名稱的右側,按兩下 [在編輯器中開啟 ] 以瀏覽至套件組合編輯器檢視。
點擊套件的部署圖示以切換至 {{部署}} 面板。
在 「資源組合 」區塊,點選 「新增」,然後選擇要建立的資源定義。
新職務定義
若要建立定義作業的套件組合組態檔:
在部署面板的 Bundle 資源區塊,點選新增,然後選擇新工作定義。
在 [建立作業定義] 對話方塊的 [作業名稱] 欄位中輸入作業的名稱。 點擊 建立。
將 YAML 新增至已建立的作業定義檔案。 以下範例 YAML 定義了一個執行筆記本的工作:
resources: jobs: run_notebook: name: run-notebook queue: enabled: true tasks: - task_key: my-notebook-task notebook_task: notebook_path: ../helloworld.ipynb
如需在 YAML 中定義作業的詳細資訊,請參閱 作業。 關於其他支援工作類型的 YAML 語法,請參見「 在宣告式自動化套件中新增任務到工作」。
新管線定義
備註
如果你已在工作區啟用 Lakeflow Pipelines Editor ,請參閱 新的 ETL 管道。
要為你的組合包新增管線定義:
在部署面板的「Bundle resources」區塊,點選「新增」,然後「新管線定義」。
在 將管線新增至現有配套 對話方塊的 管線名稱 欄位中輸入管線名稱。
按一下 新增並部署。
對於用於執行筆記本的名為 test_pipeline 的管線,會在檔案 test_pipeline.pipeline.yml 中建立以下 YAML:
resources:
pipelines:
test_pipeline:
name: test_pipeline
libraries:
- notebook:
path: ../test_pipeline.ipynb
serverless: true
catalog: main
target: test_pipeline_${bundle.environment}
您可以修改組態以執行現有的筆記本。 如需在 YAML 中定義管線的詳細資訊,請參閱 管線。
新的 ETL 流程
新增一個新的 ETL 管線定義:
在部署面板的 Bundle 資源區塊,點選新增,然後選擇新的 ETL 管線。
在將管線新增至現有配套對話方塊的名稱欄位中輸入管線的名稱。 名稱在工作區中必須是唯一的。
對於使用 個人結構描述 欄位,針對開發案例選取 是 ,針對生產案例選擇 否 。
選取管線的 預設目錄 和 預設結構描述 。
選擇管線原始程式碼的語言。
按一下 新增並部署。
檢閱 部署至開發人員 確認對話方塊中的詳細資料,然後按一下 部署。
ETL 管線使用探索和轉換範例資料表建立。
對於名稱 rad_pipeline為 的管線,會在檔案 rad_pipeline.pipeline.yml中建立下列 YAML 。 此管線設定為在無伺服器計算上執行。 關於管線配置參考,請參見 管線。
resources:
pipelines:
rad_pipeline:
name: rad_pipeline
libraries:
- glob:
include: transformations/**
serverless: true
catalog: main
schema: ${workspace.current_user.short_name}
root_path: .
新儀表板定義
要建立定義儀表板的套件設定檔:
在部署面板的 Bundle 資源區塊,點選新增,然後選擇新儀表板定義。
在「新增到現有套件」對話框的儀表板名稱欄位輸入儀表板名稱。
選擇一個 倉庫 作為儀表板。 按一下 新增並部署。
在套件中建立一個新的空儀表板和一個設定 *.dashboard.yml 檔。 儀表板儲存在設定檔中指定的倉庫中。
有關儀表板的詳細資訊,請參見儀表板。 關於儀表板設定的 YAML 語法,請參見 儀表板。
將現有的資源新增至套件組合
你可以透過工作區介面或在套件中新增資源配置,將現有資源加入你的套件。
使用組合工作區的使用者介面
要將既有的工作、流程或監控面板新增到套件中:
請前往工作區中您想要新增資源的 bundle 資料夾。
小提示
如果你之前在工作區的編輯器中開啟過該套件,它會顯示為一個空格。 參見 「空格」。
在套件組合名稱的右側,按兩下 [在編輯器中開啟 ] 以瀏覽至套件組合編輯器檢視。
點擊套件的部署圖示以切換至 {{部署}} 面板。
在 「資源組合 」區塊,點選 「新增」,然後點 選「新增現有工作」、「 新增現有管線」或 「新增現有儀表板」。
在 「新增現有... 」對話框中,從下拉選單選擇現有資源。
當你將現有資源加入 bundle 時,Databricks 會在 bundle 設定檔中為該資源建立定義。 因為你可以修改這個定義,所以組合包中定義的資源可能會與用來創建它的資源產生分歧。
選擇一個處理套件資源配置更新的選項:
-
生產部署更新:現有資源會連結到套件中的資源,而你對套件中資源所做的任何變更,都會在部署到
prod目標時套用到現有資源。 -
開發部署更新:現有資源會連結到套件中的資源,而你對套件中資源所做的任何變更,會在部署到
dev目標時套用到現有資源。 - (進階)不要更新:現有資源並未連結到該組合包。 對套件中資源所做的變更永遠不會套用到現有資源上。 反而會創建一個副本。 欲了解更多關於將套件資源綁定至其相應的工作空間資源,請參見 databricks bundle deployment bind。
-
生產部署更新:現有資源會連結到套件中的資源,而你對套件中資源所做的任何變更,都會在部署到
點擊 新增...... 將現有資源加入組合包。
新增組合設定
也可以透過定義套件配置,將現有資源加入你的套件部署中。 下列範例會將現有的管線新增至套件組合。
假設您有一個名為 taxifilter 的管線,它在共用工作區中執行 taxifilter.ipynb 筆記本:
在 Azure Databricks 工作區的側邊欄中,點擊 作業和管線。
或者,選取 [管線] 和 [我的擁有項目] 篩選。
選取現有的
taxifilter管線。在管線頁面中,按兩下 [開發 部署模式] 按鈕左側的Kebab。 然後按兩下 [ 檢視設定YAML]。
按兩下複製圖示以複製管線的套件組合組態。
在 工作區中瀏覽至您的套件組合。
點擊套件的部署圖示以切換至 {{部署}} 面板。
在 [套件組合資源 ] 區段中,按一下 [新增],然後按一下 [新增管線定義]。
備註
如果您改為看到 [ 新增 ETL 管線 ] 功能表項目,則表示您已啟用 Lakeflow 管線編輯器 。 若要將 ETL 管線新增至套件組合,請參閱 建立原始檔控制管線。
在
taxifilter對話方塊的管線名稱欄位中輸入。 點擊 建立。將現有管線的組態貼到 檔案中。 此範例管線被定義用來執行
taxifilter筆記本:resources: pipelines: taxifilter: name: taxifilter catalog: main libraries: - notebook: path: /Workspace/Shared/taxifilter.ipynb target: taxifilter_${bundle.environment}
您現在可以部署套件組合,然後透過UI執行管線資源。
編輯套件資源
Important
這項功能位於 測試版 (Beta) 中。
你可以直接在工作區 UI 中編輯屬於你套件一部分的作業和管線。 變更會自動套用至套件中這些資源的 YAML 設定。
若要編輯套件組合中的作業或管線:
- 從套件編輯器的 部署 窗格,點擊套件 資源 中的作業或管線即可開啟該工作或管線。
- 對工作或管線進行變更,例如新增筆記本任務或更改管線結構。
- 工作區通知顯示,確認對工作或管線的編輯已套用到套件組態。 你可以點擊通知中的 YAML 檔案連結,查看套件編輯器中的設定變更。
- 部署套件,使設定變更能套用到部署中。
備註
編輯資源在生產模式下總是被關閉。
Limitations
以下限制適用於工作區中編輯資源:
- 當你編輯一個欄位,該欄位的值來自 bundle 變數或替換時,變更只會更新該欄位。 它不會更新變數的定義,因此參考相同變數的其他欄位不會受到影響。
- 目前尚未支援工作權限的更新。
- 為管線或儀表板排程會建立一項工作,依排程啟動資源,但該工作與相關的管線或儀表板沒有連結,且排程不會顯示在管線或儀表板的 UI 中。 要修改排程,請在已建立的工作中編輯觸發器。