ADF 第四篇:管道的执行和触发器

Azure Data Factory 系列博客:

管道在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”,可以查看触发器执行的记录,

参考文档:

Pipeline execution and triggers in Azure Data Factory

原文地址:https://www.cnblogs.com/ljhdo/p/14086251.html