首页 > 解决方案 > 在数据工厂中循环一系列数字

问题描述

我对数据工厂很陌生,并且有一个关于循环连续数字列表的问题。

我被分配了一项从数据工厂中的 api 检索数据的任务(基于预先存在的模板)。问题是 api 被拆分为多个页面,链接是:“.../2020/entries?skippages= 1 &pagesize=1000”。

因此,在我的管道中,我需要遍历页码(迭代次数为 11)。我对 ForEach 和 Until 循环进行了一些研究,但它似乎比需要的要复杂得多。

这种任务的最佳实践是什么?

希望这是有道理的。如果没有,请告诉我,我会详细说明。

提前致谢。

标签: azure-data-factoryazure-data-factory-2azure-data-factory-pipeline

解决方案


Azure 数据工厂 (ADF) 和 Synapse 管道具有许多可在管道中使用的函数,包括range生成一系列数字的函数。

您所要做的就是在 ForEach 循环rangeItems部分中指定。一个简单的例子:

ADF 范围示例

为了进一步解释定义,所有 ADF 表达式(不包括映射数据流)都以@符号开头,range是函数,1 是开始索引,11 是要达到的计数或最大数。请参阅此处range的功能帮助。

为了访问循环内的数字,请使用item()语法,记住@在表达式的开头。

当您从 Web API 分页时,您应该仔细查看 Copy 活动的Pagination部分,这可能会根据您调用的 API 的功能提供一种替代且更动态的方法。


推荐阅读