在工作流中運行Delta Live Tables管道

您可以使用Databricks作業、Apache workflow或Azure data Factory運行Delta Live Tables管道作為數據處理工作流的一部分。

工作

可以在Databricks作業中編排多個任務,以實現數據處理工作流。要在作業中包含Delta Live Tables管道,請使用管道任務的時候創造一個工作

Apache氣流

Apache氣流是一個用於管理和調度數據工作流的開源解決方案。氣流以操作的有向無環圖(dag)表示工作流。在Python文件中定義一個工作流,風流管理調度和執行。有關安裝和使用Databricks氣流的信息,請參見用Apache風流編排Databricks作業

要將Delta Live Tables管道作為氣流工作流的一部分運行,請使用DatabricksSubmitRunOperator

需求

以下是使用Delta Live Tables的氣流支持所必需的:

  • 風流2.1.0或更高版本。

  • 磚提供者包版本2.1.0或更高。

例子

下麵的示例創建一個使用標識符觸發Delta Live Tables管道更新的風流DAG8279 d543 - 063 c - 4 d63 - 9926 dae38e35ce8b

氣流進口DAGairflow.providers.databricks.operators.databricks進口DatabricksSubmitRunOperatorairflow.utils.dates進口days_agodefault_args“主人”“氣流”DAG“dlt”start_datedays_ago2),schedule_interval“@once”default_argsdefault_args作為dagopr_run_nowDatabricksSubmitRunOperatortask_id“run_now”databricks_conn_id“CONNECTION_ID”pipeline_task“pipeline_id”“8279 d543 - 063 c - 4 d63 - 9926 dae38e35ce8b”

取代CONNECTION_ID的標識符氣流連接到你的工作空間。

將此示例保存在氣流/無進取心的人目錄和使用氣流UI查看和觸發DAG。使用Delta Live Tables UI查看管道更新的詳細信息。

Azure數據工廠

Azure數據工廠是一個基於雲的ETL服務,允許您編排數據集成和轉換工作流。Azure數據工廠直接支持在工作流中運行Databricks任務,包括筆記本電腦、JAR任務和Python腳本。您還可以通過調用Delta Live Tables在工作流中包含管道API來自Azure數據工廠網絡活動.例如,要從Azure數據工廠觸發管道更新:

  1. 創建數據工廠或者打開一個現有的數據工廠。

  2. 創建完成後,打開數據工廠的頁麵並單擊開放Azure數據工廠工作室瓷磚。將出現Azure數據工廠用戶界麵。

  3. 創建一個數據庫相關服務

  4. 通過選擇,創建一個新的Azure數據工廠管道管道Azure Data Factory Studio用戶界麵中的下拉菜單。

  5. 活動工具箱,擴大一般然後拖動網絡到管道畫布的活動。單擊設置頁簽,輸入如下值:

    請注意

    作為安全最佳實踐,當使用自動化工具、係統、腳本和應用程序進行身份驗證時,Databricks建議您使用屬於的訪問令牌服務主體而不是工作區用戶。要為服務主體創建訪問令牌,請參見管理服務主體的訪問令牌

    • URLhttps:// < databricks-instance > / api / 2.0 /管道/ < pipeline-id > /更新

      取代< databricks-instance >和數據庫工作空間實例名稱例如,dbc-a1b2345c-d6e7.cloud.www.eheci.com

      取代< pipeline-id >使用管道標識符。

    • 方法:選擇帖子從下拉列表中。

    • :點擊+新.在的名字文本框,輸入授權.在價值文本框,輸入持票人< personal-access-token >

      取代< personal-access-token >用數據庫個人訪問令牌

    • 身體:要傳遞額外的請求參數,請輸入包含這些參數的JSON文檔。例如,要開始更新並重新處理管道的所有數據:{“full_refresh”:"真正的"}.如果沒有其他請求參數,則輸入空花括號({}).

要測試Web活動,請單擊調試在數據工廠UI中的管道工具欄上。命令中顯示運行的輸出和狀態(包括錯誤)輸出選項卡的Azure數據工廠管道。使用Delta Live Tables UI查看管道更新的詳細信息。

提示

一個常見的工作流需求是在前一個任務完成後啟動一個任務。因為Delta活動表更新請求是異步的——請求在啟動更新後返回,但在更新完成之前返回——Azure數據工廠管道中依賴Delta Live Tables更新的任務必須等待更新完成。等待更新完成的一個選項是添加直到活動跟隨觸發Delta Live Tables更新的Web活動。在Until活動中:

  1. 添加一個等待活動為更新完成等待配置的秒數。

  2. 在使用Delta Live表的Wait活動之後添加一個Web活動獲取更新詳細信息請求獲取更新的狀態。的狀態字段返回更新的當前狀態,包括更新是否已完成。

  3. 的值狀態字段設置Until活動的終止條件。你也可以用a可變活動方法添加管道變量狀態值,並使用此變量作為終止條件。