Azure Data Factory 系列部落格:
- ADF 第一篇:Azure Data Factory介紹
- ADF 第二篇:使用UI建立資料工廠
- ADF 第三篇:Integration runtime和 Linked Service
- ADF 第四篇:管道的執行和觸發器
管道在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”,可以檢視觸發器執行的記錄,
參考文件: