在本教學課程中,我們將示範如何使用管線腳本活動來執行預存程式,以建立數據表,並在 Azure Synapse 數據倉儲中前置處理數據。 之後,我們會將前置處理過的資料表載入 Lakehouse。
必要條件
已啟用 Microsoft Fabric 的工作區。 如果您還沒有工作區,請參閱建立工作區一文。
在 Azure Synapse 資料倉儲中準備預存程序。 事先建立下列預存程序:
CREATE PROCEDURE spM_add_names AS --Create initial table IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[names]') AND TYPE IN (N'U')) BEGIN DROP TABLE names END; CREATE TABLE names (id INT,fullname VARCHAR(50)); --Populate data INSERT INTO names VALUES (1,'John Smith'); INSERT INTO names VALUES (2,'James Dean'); --Alter table for new columns ALTER TABLE names ADD first_name VARCHAR(50) NULL; ALTER TABLE names ADD last_name VARCHAR(50) NULL; --Update table UPDATE names SET first_name = SUBSTRING(fullname, 1, CHARINDEX(' ', fullname)-1); UPDATE names SET last_name = SUBSTRING(fullname, CHARINDEX(' ', fullname)+1, LEN(fullname)-CHARINDEX(' ', fullname)); --View Result SELECT * FROM names;
建立管線腳本活動來執行預存程序
在本節中,我們使用指令碼活動來執行在必要條件中建立的預存程序。
從 活動 工具列中選擇一個 指令碼 活動,然後在屬性窗格中選取設定索引標籤,以選擇連線詳細資料。 選取該處的 [連線] 下拉式清單,然後選擇 [更多]。 然後,您可以連線到 Azure Synapse 資料倉儲。
在 [新增來源] 區段下選取 Azure Synapse Analytics (SQL DW)。
提供 [基本驗證] 的 [伺服器]、[資料庫] 和 [使用者名稱] 和 [密碼] 欄位,然後輸入 SynapseConnection 以取得 [連線名稱]。 然後,選取 [建立],以建立新連線。
輸入 "EXEC spM_add_names" 以執行預存程序。 其會建立新的資料表 dbo.name,並使用簡單的轉換來前置處理資料,進而將 "fullname" 欄位變更為兩個欄位,"first_name"和 "last_name"。
使用管線任務將前置處理過的資料表資料載入 Lakehouse
從 [活動]
工具列選取 [複製資料] ,然後選取 [使用複製助理] ,或者在工作流程登陸頁面使用 [複製資料助理] 卡片來啟動 [複製資料助理] 。
在搜尋篩選中輸入 "Synapse",並選取資料來源的 "Azure Synapse Analytics (SQL DW)",然後選取 [下一步]。
選擇您先前建立的現有連線 "SynapseConnection"。
選擇預存程序建立和前置處理的資料表 dbo.names。 然後選取下一步。
選取 Lakehouse。
輸入名稱,並選取 [建立並連線]。
輸入要複製到 Lakehouse 目的地的資料的目的地資料表名稱,然後選取 [下一步]。
查看 [複製助理] 的最後一頁總結。 取消選取 [立即開始資料傳輸] 核取方塊,然後選取 [確定]。
選取 [確定] 之後,即會向管線畫布新增新的複製活動。
執行兩個流程活動,以載入資料
在指令碼活動中,透過 [成功] 將指令碼活動與複製資料活動連接起來。
選取 [執行],然後選取 [儲存並執行] 以在管線中執行這兩個活動。
管線成功執行之後,您可以檢視詳細資料以取得更多資訊。 選取具有 [複製活動] 名稱的連結,以查看其執行詳細資料。
切換至工作區,並尋找您建立的 Lakehouse。 選取其下方的 [SQL 分析端點],以檢查結果。
選取資料表「SynapseNamesTable」,以檢視載入 Lakehouse 的數據。
相關內容
此範例示範如何在將結果載入 Lakehouse 之前,使用預存程序來前置處理資料。 您已了解如何,
- 建立一個包含 Script 活動的管道,以執行預存程序。
- 使用管線活動將前置處理過的資料表資料載入 Lakehouse。
- 執行管線活動,以載入資料。
接下來,深入了解如何監測您的流水線執行。