將 Spark 作業定義從 Azure Synapse 遷移至 Fabric
若要將 Spark 作業定義 (SJD) 從 Azure Synapse 移至 Fabric,您有兩個不同的選項:
- 選項 1:在 Fabric 中手動建立 Spark 作業定義。
- 選項 2:您可以使用腳本從 Azure Synapse 匯出 Spark 作業定義,並使用 API 在 Fabric 中匯入它們。
如需Spark作業定義考慮,請參閱 Azure Synapse Spark 與 Fabric 之間的差異。
必要條件
如果您還沒有網狀架構工作區,請在租用戶中建立 Fabric 工作區。
選項 1:手動建立 Spark 作業定義
若要從 Azure Synapse 匯出 Spark 作業定義:
- 開啟 Synapse Studio:登入 Azure。 瀏覽至 Azure Synapse 工作區並開啟 Synapse Studio。
- 找出 Python/Scala/R Spark 作業:尋找並識別您想要移轉的 Python/Scala/R Spark 作業定義。
-
匯出工作定義群組態:
- 在 Synapse Studio 中,開啟 Spark 作業定義。
- 匯出或記下組態設定,包括腳本檔案位置、相依性、參數,以及任何其他相關詳細資料。
若要根據 Fabric 中匯出的 SJD 資訊建立新的 Spark 作業定義 :.
- Access Fabric 工作區:登入 Fabric 並存取您的工作區。
-
在 Fabric 中建立新的 Spark 作業定義:
- 在網狀架構 中,移至 資料工程師 首頁。
- 選取 Spark 工作定義。
- 使用您從 Synapse 匯出的資訊來設定作業,包括腳本位置、相依性、參數和叢集設定。
- 調整和測試:對腳本或組態進行任何必要的調整,以符合 Fabric 環境。 在 Fabric 中測試作業,以確保作業正確執行。
建立 Spark 作業定義之後,請驗證相依性:
- 請確定使用相同的 Spark 版本。
- 驗證主要定義檔是否存在。
- 驗證參考檔案、相依性和資源是否存在。
- 連結的服務、資料來源連線和裝載點。
深入瞭解如何在 Fabric 中建立 Apache Spark 作業定義。
選項 2:使用網狀架構 API
請遵循下列重要步驟進行移轉:
- 必要條件。
- 步驟 1:將 Spark 作業定義從 Azure Synapse 匯出至 OneLake (.json)。
- 步驟 2:使用網狀架構 API 自動將 Spark 作業定義匯入 Fabric。
必要條件
必要條件包括開始將 Spark 作業定義移轉至 Fabric 之前,您需要考慮的動作。
- Fabric 工作區。
- 如果您還沒有,請在工作區中建立 Fabric Lakehouse。
步驟 1:從 Azure Synapse 工作區匯出 Spark 作業定義
步驟 1 的重點在於以 json 格式將 Spark 作業定義從 Azure Synapse 工作區匯出至 OneLake。 此程序如下:
- 1.1) 將 SJD 移轉筆記本匯入 Fabric工作區。 此筆記本 會將所有Spark作業定義從指定的 Azure Synapse 工作區匯出至 OneLake 中的中繼目錄。 Synapse API 可用來匯出 SJD。
- 1.2) 在第一個命令中設定參數 ,將Spark作業定義匯出至中繼儲存體 (OneLake)。 這隻會匯出 json 中繼資料檔案。 下列代碼段是用來設定來源和目的地參數。 請務必將值取代為您自己的值。
# Azure config
azure_client_id = "<client_id>"
azure_tenant_id = "<tenant_id>"
azure_client_secret = "<client_secret>"
# Azure Synapse workspace config
synapse_workspace_name = "<synapse_workspace_name>"
# Fabric config
workspace_id = "<workspace_id>"
lakehouse_id = "<lakehouse_id>"
export_folder_name = f"export/{synapse_workspace_name}"
prefix = "" # this prefix is used during import {prefix}{sjd_name}
output_folder = f"abfss://{workspace_id}@onelake.dfs.fabric.microsoft.com/{lakehouse_id}/Files/{export_folder_name}"
- 1.3) 執行匯出/匯入筆記本的前兩個儲存格,將 Spark 工作定義中繼資料匯出至 OneLake。 一旦儲存格完成,就會建立中繼輸出目錄下的這個資料夾結構。
步驟 2:將 Spark 作業定義匯入 Fabric
步驟 2 是從中繼儲存體匯入 Spark 作業定義到 Fabric 工作區時。 此程序如下:
- 2.1) 驗證 1.2 中的組態 ,以確保會指出正確的工作區和前置詞以匯入 Spark 作業定義。
- 2.2) 執行匯出/匯入筆記本的第三個儲存格,以從中繼位置匯入所有 Spark 工作定義。
注意
匯出選項會輸出 json 中繼資料檔案。 確定可從 Fabric 存取 Spark 作業定義可執行文件、參考檔案和自變數。