如何使用Azure数据工厂获取阵列中项目的迭代ID

我有一个简单的ADF管道,该管道包含1个查找(加载要迁移的表的名称)和一个ForEach活动(其中包含复制活动,以及一个App功能来加载BQ中的数据)。我想要获取迭代ID,并将其发送到Azure函数App。 假设Lookup返回一个带有三个表(A,B,C)的JSON,我想在foreach循环中获取迭代ID,例如A代表1,B代表2,C代表3。

对此将提供任何帮助。

pangy521 回答:如何使用Azure数据工厂获取阵列中项目的迭代ID

我同意这是一个普遍的要求,但是似乎没有直接方法可以在for-each活动中获取数组索引。但是,您可以使用AzureFunction活动来尝试我的小技巧。

第1步: :在某个Blob存储路径中创建一个文本文件(名为index.txt),并将1的值存储在其中(用于用作数组索引)

第2步: :在For-each活动中,使用LookUp活动读取index.txt的值。第一次是1

enter image description here

第3步: 之后,执行Azure Function Activity来更改值--plus1。因此,下一次是2。 / p>

第4步: :完成每个学习活动后,可以通过Azure Function Activity将值重置为0

无需创建2个Azure函数,只需创建1个。您可以传递一个boolean参数来区分此调用是重置还是加号。

,

在查找表中,我将从中选择源和目标表/数据库。我在Source表的每一行中添加了另一列,其Iterator编号为1,2,3,4,查找活动从该行中检索数据。

然后在Azure数据工厂中,我读了Foreach循环中的该列。对于每个Source和Destination表,我都有一个自制的Iterator并将其用于我的目的。对我来说效果很好。

本文链接:https://www.f2er.com/3103948.html

大家都在问