本文属于【Azure 架构师学习笔记】系列。
本文属于【Azure Data Factory】系列。
接上文【Azure 架构师学习笔记】-Azure Data Factory (2)-触发器
前言
上文中提到触发器的类型有以下4种,其中第一种【计划】是常用的, 与其他工具/服务类似的方式,这里就只做简单介绍:
可以看到这种类型下,都是基于日期形式的选择:
还能根据月历来指定具体的停止时间:
但是本文重点介绍的是另外一种类型【翻转窗口】。
翻转窗口
它可以实现对过去和未来的时间区间进行触发,这一点“计划”类型实现不了。同时要注意的是翻转窗口的区间必须是固定的,不重叠的和连续的。比如0:00~1:00, 1:00~2:00, 2:00~3:00…
在发文之时, 这种类型的时间单位只有分钟,小时,和月三种选项。
在配置过程中间隔不能太细,最少5分钟,如下图:
接下来看看其他不常见的选项,如【最大并发】。对很多操作限制并发数,比如插入一个有主键的表里面时,如果主键还涉及一些时间相关的信息,那么容易导致主键冲突。我们可以直接指定并发为1来实现“串行”操作。
在“高级”下面还有一个叫“添加依赖项”的选项, 具体说明可以参见微软文档:翻转窗口自我依赖项属性
这个依赖项最多只能指定5个,如下图:
那么依赖项用来做什么的呢?从官方文档的图中大概可以知道,有些操作首先是有前后顺序或者上一个输出是下一个的输入这类关系,如果有某些依赖,可以使用这个配置使其即使时间上顺序不一致,也能实现先后顺序。
下面几个图应该可以演示存在的意义和用法。
小结
翻转窗口并不是常见用法,但是又是重要用法,对于一些特殊需求,又不想引入其他外部工具如Logic Apps时,可以考虑使用自身的一些内置功能,并且优先使用内置功能可能会更好。