带有偏移量的Azure数据工厂分页



我有一个项目场景,从端点URL获取所有用户,并将其插入SQL表,我使用ADF管道,但我在分页方面有一些问题,我在分页之前使用过,但只在下一页使用过:"someurl";使用AbsoluteUrl,但现在我遇到了问题,因为我的响应如下,为了获得下一页,我需要执行以下多次调用。

  • 我所尝试的,为每个循环创建了一个,并使用range进行迭代,但它给了我无限循环中第一个调用的副本,并且不接受接下来的500条记录,下面是这个解决方案示例。

  • https://learn.microsoft.com/en-us/answers/questions/468561/azure-data-factory-pagination-issue.html#answer-470345

基本URL:https://xyz.xyz.com/api/v2/users?take=500这给了我第一个500响应:

> ],
"total": 3059,
"next": 500
}

为了让我接下500行,我需要按照提出请求

  • https://xyz.xyz.com/api/v2/users?take=500&跳过=500
  • https://xyz.xyz.com/api/v2/users?take=500&跳过=1000
  • https://xyz.xyz.com/api/v2/users?take=500&跳过=1500

等等。。。请注意,在我的情况下,skip作为offset工作,我有36000行要获取。

你能就如何处理这件事给我一些建议吗?提前谢谢。

请检查以下解决方案是否有效,

  1. 在主管道中定义一个变量,比如说偏移量为0

  2. Inside Until活动
    a。进行如下动态内容的网络调用-@concat('https://xyz.xyz.com/api/v2/users?take=500&skip=',变量("偏移"(

    b。对数据执行所需操作,如对ADLS 的写入响应

    c。使用";设置变量";活动将偏移值增加500。

  3. 当退出时,在Until循环中使用正确的表达式,有很多方法可以做到这一点,下面是其中一种方法-当您的网络呼叫响应中没有记录时,只需设置一个变量,在您的情况下-https://xyz.xyz.com/api/v2/users?take=500&跳过=36000在until表达式中使用此变量。

相关内容

  • 没有找到相关文章

最新更新