Azure Data Factory 系列博客:
- ADF 第一篇:Azure Data Factory介紹
- ADF 第二篇:使用UI創建數據工廠
- ADF 第三篇:Integration runtime和 Linked Service
- ADF 第四篇:管道的執行和觸發器
- ADF 第五篇:轉換數據
- ADF 第六篇:Copy Data Activity詳解
- ADF 第七篇:控制流概述
- ADF 第八篇:傳遞參數(Pipeline的Parameter和Variable,Activity的output)和應用表達式
管道在Azure Data Factory中的運行(命名為Pipeline run)定義為管道執行的一個實例(instance of pipeline execution ),每一次管道執行(pipeline run)都有一個唯一的GUID來標識。用戶可以定義一個觸發器,比如,制定定時計划,觸發器在特定的時間點被激發,自動執行管道。當然,也可以手動執行管道,本文重點關注觸發器執行。
在管道執行時,可以把argument傳遞給管道中定義的parameters,這樣管道就可以根據parameters的值動態調整Activity的執行路徑。
一,觸發器執行的類型
觸發器代表一個處理單元,以確定合適開始執行管道,數據工廠支持三種類型的觸發器:
- 計划觸發器(Schedule trigger):按照計划來執行管道
- 翻滾窗口觸發器(Tumbling window trigger):在固定間隔下操作管道
- 基於事件的觸發器(Event-based trigger):響應事件的觸發器
管道和觸發器具有多對多的關系,多個觸發器可以觸發一個管道,一個觸發器可以觸發多個管道,因此,觸發器可以在多個管道中共享,當修改觸發器時,所有引用該觸發器的Pipeline都會同步修改。
二,計划觸發器
計划觸發器(Schedule trigger)按照時間計划來運行管道,本文重點關注計划觸發器,這可以實現在特定的時間點,按照特定的頻率和特定的時間間隔來執行管道,實現數據工廠的自動化運行。
在創建計划觸發器時,需要設置計划觸發器的屬性:
- startTime和endTime:計划觸發器的開始時間和結束時間,通常只制定schedule的startTime,而不設置EndTime,這樣計划觸發器就永遠有效。
- timeZone:時區,計划觸發器計時的時區
- recurrence:重復
- frequency:頻率
- interval:間隔
Step1:新建觸發器
在管道中,點擊Trigger,選擇“New/Edit”
Step2:設置觸發器的屬性
打開“New trigger”界面,從Type列表中選擇Schedule,創建Schedule Trigger,Start date默認值是當前的時間,表示trigger從當前時間開始有效;如果設置“Specify an End Date”,那么在End date之后,計划觸發器不會再次激發Pipilne的執行。在 Activated 屬性中選擇“Yes”,表示計划觸發器從創建開始是活躍的。
Step3:發布到數據工廠
把Trigger創建完成之后,之后把Pipeline的更新發布到數據工廠,觸發器才會按照計划來執行管道。
點擊“Publish all”按鈕,把Pipeline的修改發布到數據工廠,在把更新發布到數據工廠之前,觸發器不會啟動觸發器,那么管道中的Activity也不會按照計划來運行。
三,監控管道和觸發
數據工廠會記錄Pipeline的每一個次執行的數據,在數據工廠的UI界面中,打開“Monitor”選項卡,打開的界面如下圖所示,點擊“Pipeline runs”,可以查看管道的執行記錄;點擊“Trigger runs”,可以查看觸發器執行的記錄,
參考文檔: