共用方式為


使用 Databricks 資產組合在 Azure Databricks 上開發作業

Databricks Asset Bundles 也稱為 套件組合,可讓您以程式設計方式驗證、部署和執行 Azure Databricks 資源,例如作業。 您也可以使用套件組合,以程序設計方式管理 Delta Live Tables 管線,並使用 MLOps Stack。 請參閱 什麼是 Databricks 資產套件組合?

本文說明您可以從本機開發設定完成的步驟,以使用以程序設計方式管理作業的套件組合。 請參閱 Azure Databricks 工作流程簡介。

如果您有使用想要移至套件組合的 Azure Databricks 工作流程使用者介面或 API 所建立的現有作業,則必須將它們重新建立為套件組合元件檔。 若要這樣做,Databricks 建議您先使用下列步驟建立套件組合,並驗證套件組合是否正常運作。 接著,您可以將作業定義、筆記本和其他來源新增至套件組合。 請參閱 將現有的作業定義新增至套件組合

除了使用 Databricks CLI 來執行套件組合所部署的作業之外,您也可以在 Azure Databricks 作業 UI 中檢視和執行這些作業。 請參閱 檢視及執行以 Databricks 資產套件組合建立的作業。

需求

  • Databricks CLI 0.218.0 版或更新版本。 若要檢查已安裝的 Databricks CLI 版本,請執行 命令 databricks -v。 若要安裝 Databricks CLI,請參閱 安裝或更新 Databricks CLI

決策:使用範本或手動建立套件組合

決定是否要使用範本或手動建立範例套件組合:

使用範本建立套件組合

在這些步驟中,您會使用適用於 Python 的 Azure Databricks 預設套件組合範本來建立套件組合,其中包含筆記本或 Python 程式代碼,並搭配作業的定義來執行它。 接著,您會在 Azure Databricks 工作區內驗證、部署和執行已部署的作業。 遠端工作區必須啟用工作區檔案。 請參閱 什麼是工作區檔案?

步驟 1:設定驗證

在此步驟中,您會在開發機器上的 Databricks CLI 與 Azure Databricks 工作區之間設定驗證。 本文假設您想要使用 OAuth 使用者對電腦 (U2M) 驗證,以及名為 進行驗證的 DEFAULT 對應 Azure Databricks 組態配置檔。

注意

U2M 驗證適用於即時試用這些步驟。 針對完全自動化的工作流程,Databricks 建議您改用 OAuth 機器對計算機 (M2M) 驗證。 請參閱驗證中的 M2M 驗證設定指示。

  1. 針對每個目標工作區執行下列命令,使用 Databricks CLI 在本機起始 OAuth 令牌管理。

    在下列命令中,將 取代 <workspace-url> 為您的 Azure Databricks 個別工作區 URL,例如 https://adb-1234567890123456.7.azuredatabricks.net

    databricks auth login --host <workspace-url>
    
  2. Databricks CLI 會提示您儲存輸入為 Azure Databricks 組態設定文件的資訊。 按 Enter 以接受建議的配置檔名稱,或輸入新或現有配置檔的名稱。 任何具有相同名稱的現有配置檔,會以您輸入的資訊覆寫。 您可以使用設定檔,在多個工作區之間快速切換驗證內容。

    若要取得任何現有設定檔的清單,請在個別的終端機或命令提示字元中,使用 Databricks CLI 來執行命令 databricks auth profiles。 若要檢視特定設定檔的現有設定,請執行 命令 databricks auth env --profile <profile-name>

  3. 在您的網頁瀏覽器中,完成登入 Azure Databricks 工作區的畫面指示。

  4. 若要檢視配置檔目前的 OAuth 令牌值和令牌即將到期的時間戳,請執行下列其中一個命令:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    如果您有多個具有相同 --host 值的配置檔,您可能需要一起指定 --host-p 選項,以協助 Databricks CLI 尋找正確的相符 OAuth 令牌資訊。

步驟 2:建立套件組合

套件組合包含您想要部署的成品,以及您想要執行之資源的設定。

  1. 使用終端機或命令提示字元,切換至本機開發計算機上的目錄,其中包含範本產生的套件組合。

  2. 使用 Dataricks CLI 來執行 bundle init 命令:

    databricks bundle init
    
  3. 針對 Template to use,按下 Enter,保留的預設值default-python

  4. 針對 Unique name for this project,保留預設值 my_project,或輸入不同的值,然後按 Enter。 這會決定此套件組合的根目錄名稱。 此根目錄會在您目前的工作目錄中建立。

  5. 針對 Include a stub (sample) notebook,選取 yes 並按 Enter

  6. 針對 Include a stub (sample) DLT pipeline,選取 no 並按 Enter。 這會指示 Databricks CLI 不要在套件組合中定義範例 Delta Live Tables 管線。

  7. 針對 Include a stub (sample) Python package,選取 no 並按 Enter。 這會指示 Databricks CLI 不要將範例 Python 轉輪套件檔案或相關的組建指示新增至套件組合。

步驟 3:探索套件組合

若要檢視範本產生的檔案,請切換至新建立套件組合的根目錄,並使用慣用的 IDE 開啟此目錄,例如 Visual Studio Code。 特別感興趣的檔案包括下列專案:

  • databricks.yml:此檔案會指定套件組合的程式設計名稱、包含作業定義的參考,以及指定目標工作區的相關設定。
  • resources/<project-name>_job.yml:此檔案會指定作業的設定,包括預設筆記本工作。
  • src/notebook.ipynb:此檔案是範例筆記本,執行時,只要初始化包含數位 1 到 10 的 RDD 即可。

若要自定義作業,作業宣告內的對應會對應至以YAML格式表示的POST /api/2.1/jobs/create 中所定義的建立作業作業要求承載。

提示

您可以使用 Databricks Asset Bundles 中覆寫叢集設定中所述 的技術,定義、合併和覆寫套件組合中新作業叢集的設定。

步驟 4:驗證專案的套件組合組態檔

在此步驟中,您會檢查套件組合組態是否有效。

  1. 從根目錄,使用 Databricks CLI 來執行 bundle validate 命令,如下所示:

    databricks bundle validate
    
  2. 如果傳回套件組合組態的摘要,則驗證成功。 如果傳回任何錯誤,請修正錯誤,然後重複此步驟。

如果您在此步驟之後對套件組合進行任何變更,您應該重複此步驟來檢查套件組合元件是否仍然有效。

步驟 5:將本機專案部署至遠端工作區

在此步驟中,您會將本機筆記本部署至遠端 Azure Databricks 工作區,並在工作區內建立 Azure Databricks 作業。

  1. 從套件組合根目錄,使用 Databricks CLI 來執行 bundle deploy 命令,如下所示:

    databricks bundle deploy -t dev
    
  2. 檢查是否已部署本機筆記本:在 Azure Databricks 工作區的提要欄位中,按兩下 [ 工作區]。

  3. 按兩下 [使用者<your-username>>> .bundle ><project-name>> 開發>檔案 > src] 資料夾。 筆記本應該在此資料夾中。

  4. 檢查作業是否已建立:在 Azure Databricks 工作區的提要欄位中,按兩下 [ 工作流程]。

  5. 在 [ 作業] 索引標籤上,按兩下 [dev <your-username>] <project-name>_job

  6. 按兩下 [工作] 索引標籤。應該有一項工作:notebook_task

如果您在此步驟之後對套件組合進行任何變更,您應該重複步驟 4-5 來檢查套件組合組態是否仍然有效,然後重新部署專案。

步驟 6:執行已部署的專案

在此步驟中,您會在工作區中執行 Azure Databricks 作業。

  1. 從根目錄,使用 Databricks CLI 來執行 bundle run 命令,如下所示,將 取代 <project-name> 為步驟 2 中項目的名稱:

    databricks bundle run -t dev <project-name>_job
    
  2. 複製終端機中顯示的 值 Run URL ,並將此值貼到網頁瀏覽器中,以開啟您的 Azure Databricks 工作區。

  3. 在 Azure Databricks 工作區中,在作業工作順利完成並顯示綠色標題欄之後,按兩下作業工作以查看結果。

如果您在此步驟之後對套件組合進行任何變更,您應該重複步驟 4-6,檢查套件組合組態是否仍然有效、重新部署專案,以及執行重新部署的專案。

步驟 7:清除

在此步驟中,您會從工作區中刪除已部署的筆記本和作業。

  1. 從根目錄,使用 Databricks CLI 來執行 bundle destroy 命令,如下所示:

    databricks bundle destroy
    
  2. 確認工作移除要求:當系統提示您永久終結資源時,請輸入 y ,然後按 Enter

  3. 確認筆記本刪除要求:當系統提示您永久終結先前部署的資料夾及其所有檔案時,輸入 y 並按 Enter

  4. 如果您也想要從開發計算機刪除套件組合,您現在可以從步驟 2 中刪除本機目錄。

您已使用範本來建立套件組合的步驟結束。

手動建立套件組合

在這些步驟中,您會從頭開始建立套件組合。 這個簡單的套件組合包含兩個筆記本,以及用來執行這些筆記本的 Azure Databricks 作業定義。 然後,您可以從 Azure Databricks 工作區內的作業驗證、部署和執行已部署的筆記本。 這些步驟會將標題為 使用 Azure Databricks 作業建立第一個工作流程的快速入門自動化。

步驟 1:建立套件組合

套件組合包含您想要部署的成品,以及您想要執行之資源的設定。

  1. 在您的開發電腦上建立或識別空的目錄。
  2. 切換至終端機中的空白目錄,或在 IDE 中開啟空白目錄。

提示

您的空目錄可能與 Git 提供者所管理的複製存放庫相關聯。 這可讓您使用外部版本控制來管理套件組合,並更輕鬆地與專案上的其他開發人員和IT專業人員共同作業。 不過,為了協助簡化此示範,此處不會使用複製的存放庫。

如果您選擇複製此示範的存放庫,Databricks 建議存放庫是空的,或只有基本檔案,例如 README.gitignore。 否則,存放庫中任何預先存在的檔案可能會不必要地同步處理至您的 Azure Databricks 工作區。

步驟 2:將筆記本新增至專案

在此步驟中,您會將兩個筆記本新增至您的專案。 自2007年以來,第一個筆記本會從紐約州衛生部的公共數據源中取得趨勢嬰兒名字的清單。 請參閱 嬰兒名稱:依名稱趨勢:從 2007 年開始在部門網站上。 第一個筆記本接著會將此數據儲存至名為 的 Azure Databricks Unity 目錄磁碟區,該磁碟區 my-volume 位於名為 的目錄內名為 defaultmain的架構中。 第二個筆記本會查詢儲存的數據,並依名字和性別顯示 2014 年嬰兒名稱的匯總計數。

  1. 從目錄的根目錄中,建立第一個筆記本,名為 的檔案 retrieve-baby-names.py

  2. 將下列程式碼新增至 retrieve-baby-names.py 檔案:

    # Databricks notebook source
    import requests
    
    response = requests.get('http://health.data.ny.gov/api/views/jxy9-yhdk/rows.csv')
    csvfile = response.content.decode('utf-8')
    dbutils.fs.put("/Volumes/main/default/my-volume/babynames.csv", csvfile, True)
    
  3. 在同一個目錄中建立第二個筆記本,名為 filter-baby-names.py的檔案。

  4. 將下列程式碼新增至 filter-baby-names.py 檔案:

    # Databricks notebook source
    babynames = spark.read.format("csv").option("header", "true").option("inferSchema", "true").load("/Volumes/main/default/my-volume/babynames.csv")
    babynames.createOrReplaceTempView("babynames_table")
    years = spark.sql("select distinct(Year) from babynames_table").toPandas()['Year'].tolist()
    years.sort()
    dbutils.widgets.dropdown("year", "2014", [str(x) for x in years])
    display(babynames.filter(babynames.Year == dbutils.widgets.get("year")))
    

步驟 3:將套件組合組態架構檔新增至專案

如果您使用 Visual Studio Code、PyCharm Professional 或 IntelliJ IDEA Ultimate 等 IDE 來支援 YAML 檔案和 JSON 架構檔案,您可以使用 IDE 不僅建立套件組合組態架構檔,還可以檢查專案的套件組合組態檔語法和格式,並提供程式代碼完成提示, 如下。 請注意,雖然您稍後會在步驟 5 中建立的套件組合組態檔是以 YAML 為基礎,但此步驟中的套件組合組態架構檔案是以 JSON 為基礎。

Visual Studio Code

  1. 將 YAML 語言伺服器支援新增至 Visual Studio Code,例如從 Visual Studio Code Marketplace 安裝 YAML 擴充功能。

  2. 使用 Databricks CLI 執行命令,並將輸出重新導向至 JSON 檔案,以 bundle schema 產生 Databricks 資產組合組態 JSON 架構檔案。 例如,在目前目錄中產生名為 bundle_config_schema.json 的檔案,如下所示:

    databricks bundle schema > bundle_config_schema.json
    
  3. 請注意,稍後在步驟 5 中,您會將下列批注新增至套件組合組態檔的開頭,這會將您的套件組合組態檔與指定的 JSON 架構檔案產生關聯:

    # yaml-language-server: $schema=bundle_config_schema.json
    

    注意

    在上述批注中,如果您的 Databricks 資產組合組態 JSON 架構檔案位於不同的路徑,請將 取代 bundle_config_schema.json 為架構檔案的完整路徑。

PyCharm Professional

  1. 使用 Databricks CLI 執行命令,並將輸出重新導向至 JSON 檔案,以 bundle schema 產生 Databricks 資產組合組態 JSON 架構檔案。 例如,在目前目錄中產生名為 bundle_config_schema.json 的檔案,如下所示:

    databricks bundle schema > bundle_config_schema.json
    
  2. 依照設定自定義 JSON 架構中的 指示,設定 PyCharm 以辨識套件組合組態 JSON 架構檔案,然後完成 JSON 架構對應。

  3. 請注意,稍後在步驟 5 中,您將使用 PyCharm 來建立或開啟套件組合組態檔。 依照慣例,此檔案的名稱為 databricks.yml

IntelliJ IDEA Ultimate

  1. 使用 Databricks CLI 執行命令,並將輸出重新導向至 JSON 檔案,以 bundle schema 產生 Databricks 資產組合組態 JSON 架構檔案。 例如,在目前目錄中產生名為 bundle_config_schema.json 的檔案,如下所示:

    databricks bundle schema > bundle_config_schema.json
    
  2. 依照設定自定義 JSON 架構中的 指示,設定 IntelliJ IDEA 以辨識套件組合組態 JSON 架構檔案,然後完成 JSON 架構對應。

  3. 請注意,在步驟 5 稍後,您將使用 IntelliJ IDEA 來建立或開啟套件組合組態檔。 依照慣例,此檔案的名稱為 databricks.yml

步驟 4:設定驗證

在此步驟中,您會在開發機器上的 Databricks CLI 與 Azure Databricks 工作區之間設定驗證。 本文假設您想要使用 OAuth 使用者對電腦 (U2M) 驗證,以及名為 進行驗證的 DEFAULT 對應 Azure Databricks 組態配置檔。

注意

U2M 驗證適用於即時試用這些步驟。 針對完全自動化的工作流程,Databricks 建議您改用 OAuth 機器對計算機 (M2M) 驗證。 請參閱驗證中的 M2M 驗證設定指示。

  1. 針對每個目標工作區執行下列命令,使用 Databricks CLI 在本機起始 OAuth 令牌管理。

    在下列命令中,將 取代 <workspace-url> 為您的 Azure Databricks 個別工作區 URL,例如 https://adb-1234567890123456.7.azuredatabricks.net

    databricks auth login --host <workspace-url>
    
  2. Databricks CLI 會提示您儲存輸入為 Azure Databricks 組態設定文件的資訊。 按 Enter 以接受建議的配置檔名稱,或輸入新或現有配置檔的名稱。 任何具有相同名稱的現有配置檔,會以您輸入的資訊覆寫。 您可以使用設定檔,在多個工作區之間快速切換驗證內容。

    若要取得任何現有設定檔的清單,請在個別的終端機或命令提示字元中,使用 Databricks CLI 來執行命令 databricks auth profiles。 若要檢視特定設定檔的現有設定,請執行 命令 databricks auth env --profile <profile-name>

  3. 在您的網頁瀏覽器中,完成登入 Azure Databricks 工作區的畫面指示。

  4. 若要檢視配置檔目前的 OAuth 令牌值和令牌即將到期的時間戳,請執行下列其中一個命令:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    如果您有多個具有相同 --host 值的配置檔,您可能需要一起指定 --host-p 選項,以協助 Databricks CLI 尋找正確的相符 OAuth 令牌資訊。

步驟 5:將套件組合組態檔新增至專案

在此步驟中,您會定義您要部署和執行兩個筆記本的方式。 在此示範中,您想要使用 Azure Databricks 作業來執行第一個筆記本,然後執行第二個筆記本。 因為第一個筆記本會儲存數據,而第二個筆記本會查詢儲存的數據,因此您希望第一個筆記本在第二個筆記本開始之前完成執行。 您會在專案中的套件組合組態檔內建立這些目標模型。

  1. 從目錄的根目錄中,建立套件組合組態檔,名為的檔案 databricks.yml
  2. 將下列程式代碼新增至 databricks.yml 檔案,並將 <workspace-url> 取代為您的 個別工作區 URL, 例如 https://adb-1234567890123456.7.azuredatabricks.net。 此 URL 必須符合檔案 .databrickscfg 中的 URL:

提示

從開始 # yaml-language-server的第一行只有在 IDE 支援時才需要 。 如需詳細資訊,請參閱先前的步驟 3。

# yaml-language-server: $schema=bundle_config_schema.json
bundle:
  name: baby-names

resources:
  jobs:
    retrieve-filter-baby-names-job:
      name: retrieve-filter-baby-names-job
      job_clusters:
        - job_cluster_key: common-cluster
          new_cluster:
            spark_version: 12.2.x-scala2.12
            node_type_id: Standard_DS3_v2
            num_workers: 1
      tasks:
        - task_key: retrieve-baby-names-task
          job_cluster_key: common-cluster
          notebook_task:
            notebook_path: ./retrieve-baby-names.py
        - task_key: filter-baby-names-task
          depends_on:
            - task_key: retrieve-baby-names-task
          job_cluster_key: common-cluster
          notebook_task:
            notebook_path: ./filter-baby-names.py

targets:
  development:
    workspace:
      host: <workspace-url>

若要自定義作業,作業宣告內的對應會對應至以YAML格式表示的POST /api/2.1/jobs/create 中所定義的建立作業作業要求承載。

提示

您可以使用 Databricks Asset Bundles 中覆寫叢集設定中所述 的技術,定義、合併和覆寫套件組合中新作業叢集的設定。

步驟 6:驗證專案的套件組合組態檔

在此步驟中,您會檢查套件組合組態是否有效。

  1. 使用 Databricks CLI 來執行 bundle validate 命令,如下所示:

    databricks bundle validate
    
  2. 如果傳回套件組合組態的摘要,則驗證成功。 如果傳回任何錯誤,請修正錯誤,然後重複此步驟。

如果您在此步驟之後對套件組合進行任何變更,您應該重複此步驟來檢查套件組合元件是否仍然有效。

步驟 7:將本機專案部署至遠端工作區

在此步驟中,您會將兩個本機筆記本部署至遠端 Azure Databricks 工作區,並在工作區內建立 Azure Databricks 作業。

  1. 使用 Databricks CLI 來執行 bundle deploy 命令,如下所示:

    databricks bundle deploy -t development
    
  2. 檢查是否已部署這兩個本機筆記本:在 Azure Databricks 工作區的提要字段中,按兩下 [ 工作區]。

  3. 按兩下 [Users><your-username>> .bundle > baby-name > 開發>檔案] 資料夾。 這兩個筆記本應該在此資料夾中。

  4. 檢查作業是否已建立:在 Azure Databricks 工作區的提要欄位中,按兩下 [ 工作流程]。

  5. 在 [ 作業] 索引標籤上,按兩下 [擷取-filter-baby-names-job]。

  6. 按兩下 [工作] 索引標籤。應該有兩個工作:retrieve-baby-names-task 和 filter-baby-names-task

如果您在此步驟之後對套件組合進行任何變更,您應該重複步驟 6-7 來檢查套件組合組態是否仍然有效,然後重新部署專案。

步驟 8:執行已部署的專案

在此步驟中,您會在工作區中執行 Azure Databricks 作業。

  1. 使用 Databricks CLI 來執行 bundle run 命令,如下所示:

    databricks bundle run -t development retrieve-filter-baby-names-job
    
  2. 複製終端機中顯示的 值 Run URL ,並將此值貼到網頁瀏覽器中,以開啟您的 Azure Databricks 工作區。

  3. 在 Azure Databricks 工作區中,在兩個工作順利完成並顯示綠色標題欄之後,按兩擊 filter-baby-names-task 工作以查看查詢結果。

如果您在此步驟之後對套件組合進行任何變更,您應該重複步驟 6-8,檢查套件組合組態是否仍然有效、重新部署專案,以及執行重新部署的專案。

步驟 9:清除

在此步驟中,您會從工作區中刪除兩個已部署的筆記本和作業。

  1. 使用 Databricks CLI 來執行 bundle destroy 命令,如下所示:

    databricks bundle destroy
    
  2. 確認工作移除要求:當系統提示您永久終結資源時,請輸入 y ,然後按 Enter

  3. 確認筆記本刪除要求:當系統提示您永久終結先前部署的資料夾及其所有檔案時,請輸入 y ,然後按 Enter

bundle destroy執行 命令只會刪除已部署的作業和包含兩個已部署筆記本的資料夾。 此命令不會刪除任何副作用,例如 babynames.csv 第一個筆記本建立的檔案。 若要刪除檔案 babybnames.csv ,請執行下列動作:

  1. 在 Azure Databricks 工作區的提要字段中,按兩下 [目錄]。
  2. 按兩下 [ 瀏覽 DBFS]。
  3. 按兩下 [檔案存放 ] 資料夾。
  4. 按兩下babynames.csv旁的下拉式箭號,然後按兩下 [刪除]。
  5. 如果您也想要從開發計算機刪除套件組合,您現在可以從步驟 1 刪除本機目錄。

將現有的作業定義新增至套件組合

您可以使用現有的作業定義作為基礎,在套件組合組態檔中定義新的作業。 若要這麼做,請完成下列步驟。

注意

下列步驟會建立與現有作業具有相同設定的新作業。 不過,新作業的作業標識碼與現有的作業不同。 您無法自動將現有的作業識別碼匯入套件組合。

步驟 1:以 YAML 格式取得現有的作業定義

在此步驟中,使用 Azure Databricks 工作區使用者介面來取得現有作業定義的 YAML 表示法。

  1. 在 Azure Databricks 工作區的提要字段中,按兩下 [ 工作流程]。
  2. 在 [ 作業] 索引標籤上,按兩下作業的 [名稱 ] 連結。
  3. 按兩下 [ 立即 執行] 按鈕旁的省略號,然後按兩下 [ 檢視YAML]。
  4. 在 [ 建立] 索引標籤上,按兩下 [複製],將作業定義的YAML複製到本機剪貼簿。

步驟 2:將作業定義 YAML 新增至套件組合組態檔

在套件組合組態檔中,將您從上一個步驟複製的 YAML 新增至套件組合組態檔中標示 <job-yaml-can-go-here> 的下列其中一個位置,如下所示:

resources:
  jobs:
    <some-unique-programmatic-identifier-for-this-job>:
      <job-yaml-can-go-here>

targets:
  <some-unique-programmatic-identifier-for-this-target>:
    resources:
      jobs:
        <some-unique-programmatic-identifier-for-this-job>:
          <job-yaml-can-go-here>

步驟 3:將筆記本、Python 檔案和其他成品新增至套件組合

任何在現有作業中參考的 Python 檔案和筆記本,都應該移至套件組合的來源。

為了更妥善地與套件組合相容,筆記本應該使用 IPython 筆記本格式 (.ipynb)。 如果您在本機開發套件組合,您可以從 Azure Databricks 工作區將現有的筆記本導出成 .ipynb 格式,方法是從 Azure Databricks Notebook 使用者介面按兩下 [檔案 > 導出 > IPython Notebook ]。 依照慣例,您應該接著將下載的 src/ 筆記本放入套件組合中的目錄中。

將筆記本、Python 檔案和其他成品新增至套件組合之後,請確定您的作業定義會參考它們。 例如,對於目錄中檔名hello.ipynbsrc/為的筆記本,且src/目錄與參考src/目錄的套件組合組態檔位於相同的資料夾中,作業定義可能會以下列方式表示:

resources:
  jobs:
    hello-job:
      name: hello-job
      tasks:
      - task_key: hello-task
        notebook_task:
          notebook_path: ./src/hello.ipynb

步驟 4:驗證、部署和執行新作業

  1. 執行下列命令,驗證套件組合的組態檔語法正確:

    databricks bundle validate
    
  2. 執行下列命令來部署套件組合。 在此命令中,將 取代 <target-identifier> 為套件組合元件中目標的唯一程式設計識別碼:

    databricks bundle deploy -t <target-identifier>
    
  3. 使用下列命令執行作業。

    databricks bundle run -t <target-identifier> <job-identifier>
    
    • 將取代 <target-identifier> 為套件組合組態中目標的唯一程式設計標識碼。
    • 將取代 <job-identifier> 為套件組合組態中作業的唯一程式設計標識碼。

設定使用無伺服器計算的作業

重要

工作流程的無伺服器計算處於 公開預覽狀態。 如需資格和啟用的相關信息,請參閱 啟用無伺服器計算公開預覽

下列範例示範套件組合組態,以建立使用無伺服器計算的作業。

若要使用無伺服器計算來執行包含筆記本工作的作業,請省略 job_clusters 套件組合組態檔中的組態。

# yaml-language-server: $schema=bundle_config_schema.json
bundle:
  name: baby-names

resources:
  jobs:
    retrieve-filter-baby-names-job-serverless:
      name: retrieve-filter-baby-names-job-serverless
      tasks:
        - task_key: retrieve-baby-names-task
          notebook_task:
            notebook_path: ./retrieve-baby-names.py
        - task_key: filter-baby-names-task
          depends_on:
            - task_key: retrieve-baby-names-task
          notebook_task:
            notebook_path: ./filter-baby-names.py

  targets:
    development:
      workspace:
        host: <workspace-url>

若要使用無伺服器計算來執行包含 Python 工作的作業,請包含組 environments 態。

# yaml-language-server: $schema=bundle_config_schema.json
bundle:
  name: serverless-python-tasks

resources:
jobs:
  serverless-python-job:
    name: serverless-job-with-python-tasks

    tasks:
      - task_key: wheel-task-1
        python_wheel_task:
          entry_point: main
          package_name: wheel_package
        environment_key: Default

    environments:
      - environment_key: Default
        spec:
          client: "1"
          dependencies:
            - workflows_authoring_toolkit==0.0.1

targets:
  development:
    workspace:
      host: <workspace-url>

請參閱 使用適用於工作流程的無伺服器計算來執行 Azure Databricks 作業。