在 Azure Data Factory 中使用 Databricks Notebook 活動執行 Databricks 筆記本

適用于: Azure Data Factory Azure Synapse Analytics

提示

試用 Microsoft Fabric 中的 Data Factory,這是適用于企業的單一分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告等所有專案。 瞭解如何 免費啟動新的試用版

在本教學課程中,您會使用Azure 入口網站建立 Azure Data Factory 管線,針對 Databricks 作業叢集執行 Databricks Notebook。 它也會在執行期間,將 Azure Data Factory 參數傳遞至 Databricks 筆記本。

您會在本教學課程中執行下列步驟:

  • 建立資料處理站。

  • 建立使用 Databricks Notebook 活動的管線。

  • 觸發管線執行。

  • 監視管線執行。

如尚未擁有 Azure 訂用帳戶,請在開始之前先建立免費帳戶

如需此功能的 11 分鐘簡介和示範,請觀看下列影片:

必要條件

建立資料處理站

  1. 啟動 Microsoft Edge Google Chrome 網頁瀏覽器。 目前只有 Microsoft Edge 和 Google Chrome 網頁瀏覽器才支援 Data Factory UI。

  2. 選取 [Azure 入口網站] 功能表上的 [建立資源 ],選取 [整合 ],然後選取 [Data Factory ]。

    Screenshot showing Data Factory selection in the New pane.

  3. 在 [ 建立 Data Factory ] 頁面的 [基本] 索引標籤底 下,選取您要在其中建立 Data Factory 的 Azure 訂 用帳戶。

  4. 針對 資源群組 ,請採取下列步驟之一:

    1. 從下拉式清單中選取現有的資源群組。

    2. 選取 [ 新建 ],然後輸入新資源群組的名稱。

    若要瞭解資源群組,請參閱 使用資源群組來管理您的 Azure 資源

  5. 針對 [ 區域 ],選取資料處理站的位置。

    此清單只會顯示 Data Factory 支援的位置,以及 Azure Data Factory 中繼資料的儲存位置。 Data Factory 所使用的相關聯資料存放區(例如Azure 儲存體和 Azure SQL 資料庫)和計算(例如 Azure HDInsight)可以在其他區域中執行。

  6. 針對 [ 名稱 ],輸入 ADFTutorialDataFactory

    Azure Data Factory 的名稱必須是 全域唯 一的。 如果您看到下列錯誤,請變更資料處理站的名稱(例如,使用 < 您的名稱 > ADFTutorialDataFactory )。 如需 Data Factory 成品的命名規則,請參閱 Data Factory - 命名規則 一文。

    Screenshot showing the Error when a name is not available.

  7. 針對 [ 版本 ],選取 [V2 ]。

  8. 選取 [下一步:Git 組態 ],然後選取 [ 稍後設定 Git] 核取方塊。

  9. 選取 [ 檢閱 + 建立 ],然後在驗證通過之後選取 [建立 ]。

  10. 建立完成後,選取 [移至資源 ] 以流覽至 Data Factory 頁面。 選取 [ 開啟 Azure Data Factory Studio ] 圖格,以在不同的瀏覽器索引標籤上啟動 Azure Data Factory 使用者介面 (UI) 應用程式。

    Screenshot showing the home page for the Azure Data Factory, with the Open Azure Data Factory Studio tile.

建立連結服務

在本節中,您會撰寫 Databricks 連結服務。 此連結服務包含 Databricks 叢集的連線資訊:

建立 Azure Databricks 連結服務

  1. 在首頁上,切換至左面板中的 [ 管理] 索引標籤。

    Screenshot showing the Manage tab.

  2. 選取 [連線] 底下的 [連結服務 ],然後選取 [ + 新增 ]。

    Screenshot showing how to create a new connection.

  3. 在 [ 新增連結服務 ] 視窗中,選取 [計算 > Azure Databricks ],然後選取 [ 繼續]。

    Screenshot showing how to specify a Databricks linked service.

  4. 在 [ 新增連結服務 ] 視窗中,完成下列步驟:

    1. 針對 [ 名稱],輸入 AzureDatabricks_LinkedService

    2. 選取您將用來執行筆記本的適當 Databricks 工作區

    3. 針對 [ 選取叢集 ],選取 [ 新增作業叢集 ]。

    4. 針對 Databrick 工作區 URL ,應該會自動填入資訊。

    5. 針對 [驗證類型 ],如果您選取 [存取權杖 ],請從 Azure Databricks 工作場所產生它。 您可以在這裡 找到這些步驟 。 針對 受控服務識別 使用者指派的受控識別 ,請在 Azure Databricks 資源的 [存取控制 ] 功能表中,將參與者角色 與這兩個身分識別。

    6. 針對 [ 叢集版本 ],選取您想要使用的版本。

    7. 針對 [ 叢集節點類型 ],選取 本教學課程的 [一般用途] (HDD) 類別下的 [Standard_D3_v2 ]。

    8. 針對 [ 背景工作角色 ],輸入 2

    9. 選取 建立

      Screenshot showing the configuration of the new Azure Databricks linked service.

建立新管線

  1. +選取 [加號] 按鈕,然後選取功能表上的 [ 管線 ]。

    Screenshot showing buttons for creating a new pipeline.

  2. 建立 要用於管線 的參數 。 稍後您會將此參數傳遞至 Databricks Notebook 活動。 在空管線中,選取 [ 參數 ] 索引標籤,然後選取 [+ 新增 ],並將其命名為 ' name '。

    Screenshot showing how to create a new parameter.

    Screenshot showing how to create the name parameter.

  3. 在 [活動 ] 工具箱中 ,展開 [Databricks ]。 將 Notebook 活動從 [活動 ] 工具箱拖曳至管線設計工具介面。

    Screenshot showing how to drag the notebook to the designer surface.

  4. 在底部的 Databricks Notebook 使用中視窗屬性中,完成下列步驟:

    1. 切換至 [Azure Databricks] 索引標籤。

    2. 選取 AzureDatabricks_LinkedService (您在上一個程式中建立的)。

    3. 切換至 [設定] 索引卷 標。

    4. 流覽以選取 Databricks Notebook 路徑 。 讓我們建立筆記本,並在這裡指定路徑。 您可以遵循後續幾個步驟來取得筆記本路徑。

      1. 啟動您的 Azure Databricks 工作區。

      2. 在 Workplace 中建立 新的資料夾 ,並將其稱為 adftutorial

        Screenshot showing how to create a new folder.

      3. 顯示如何建立新筆記本的螢幕擷取畫面。 (Python),讓我們在 adftutorial Folder 底下 呼叫 mynotebook ,按一下 [ 建立]。

        Screenshot showing how to create a new notebook.

        Screenshot showing how to set the properties of the new notebook.

      4. 在新建立的筆記本 [mynotebook] 中,新增下列程式碼:

        # Creating widgets for leveraging parameters, and printing the parameters
        
        dbutils.widgets.text("input", "","")
        y = dbutils.widgets.get("input")
        print ("Param -\'input':")
        print (y)
        

        Screenshot showing how to create widgets for parameters.

      5. 在此案例中,筆記本路徑 /adftutorial/mynotebook

  5. 切換回 Data Factory UI 撰寫工具 。 流覽至 Notebook1 活動底下的 [設定 索引標籤]。

    a. 將參數 新增至 Notebook 活動。 您可以使用您稍早新增至管線 相同參數。

    Screenshot showing how to add a parameter.

    b. 將參數命名為 輸入 ,並提供值作為運算式 @pipeline()。parameters.name

  6. 若要驗證管線,請選取工具列上的 [ 驗證] 按鈕。 若要關閉驗證視窗,請選取 [ 關閉 ] 按鈕。

    Screenshot showing how to validate the pipeline.

  7. 選取 [ 全部 發佈]。 Data Factory UI 會將實體(連結服務和管線)發佈至 Azure Data Factory 服務。

    Screenshot showing how to publish the new data factory entities.

觸發管線執行

選取 工具列上的 [新增觸發程式 ],然後選取 [ 立即 觸發]。

Screenshot showing how to select the 'Trigger now' command.

[ 管線執行 ] 對話方塊會 要求 name 參數。 在此使用 /path/filename 作為參數。 選取 [確定]。

Screenshot showing how to provide a value for the name parameters.

監視管道執行

  1. 切換至 [ 監視] 索引標籤。確認您看到管線執行。 大約需要 5-8 分鐘的時間建立 Databricks 作業叢集 (執行筆記本的位置)。

    Screenshot showing how to monitor the pipeline.

  2. 定期選取 [重新整理] 以檢查管線執行的狀態。

  3. 若要查看與管線執行相關聯的活動執行,請在 [管線名稱 ] 資料行中 選取 pipeline1 連結。

  4. 在 [ 活動執行 ] 頁面中,選取 [活動名稱 ] 資料行中的 [輸出] 以檢視每個活動的輸出,您可以在 [輸出 ] 窗格中找到 Databricks 記錄 的連結,以取得更詳細的 Spark 記錄。

  5. 您可以選取 頂端階層連結功能表中的 [所有管線執行] 連結,切換回管線執行 檢視。

確認輸出

您可以登入 Azure Databricks 工作區 ,移至 [叢集 ],您可以看到 作業 狀態為 擱置執行、執行中或終止

Screenshot showing how to view the job cluster and the job.

您可以按一下 [作業名稱 ],然後流覽以查看進一步的詳細資料。 成功執行時,您可以驗證傳遞的參數和 Python 筆記本的輸出。

Screenshot showing how to view the run details and output.

此範例中的管線會觸發 Databricks Notebook 活動,並將參數傳遞給它。 您已了解如何︰

  • 建立資料處理站。

  • 建立使用 Databricks Notebook 活動的管線。

  • 觸發管線執行。

  • 監視管線執行。