azure 数据工厂中rest api 的分页错误

问题描述 投票:0回答:1

数据预览分页

复制数据SQL

我正在尝试将一些数据从其余 api 复制到 sql 数据库中,但当我调试管道时,我只能复制 20 个项目(第一页)。但数据源里有700多条。

分页已尝试

我尝试过这个分页,它之前适用于不同的数据源,该数据源具有 after 链接,并且能够将超过 5000 条记录复制到 sql 中,但我现在正在工作的数据源没有 after 链接,但它有值如 item_per_page、page_index、total_pages、total_items。

如何复制所有项目?

rest azure-data-factory
1个回答
0
投票

您可以按照以下步骤将其余 Api 中的所有页面复制到 SQL 数据库中:

创建管道并运行 Web 活动以检索 Api 的详细信息,如下所示:

enter image description here

管道Web活动成功执行后,将检索Rest Api的详细信息,为源创建Rest Api的链接服务,为接收器创建SQL数据库链接服务。在 Web 活动成功时添加 foreach 活动,添加以下范围函数作为 foreach 活动的项目:

@range(1,activity('restAPI').output.total_pages)

在每个活动添加复制活动中,通过使用创建的链接服务,使用数据集参数

rurl
和值
@dataset().rurl
创建 Rest Api 数据集,将其添加为复制活动的源,并将 get 活动设置为请求方法并添加值
?page=@{item()} 
rurl
如下图:

enter image description here

使用创建的链接服务为表创建带有数据集参数

tablename
的SQL数据库数据集,将其添加到值为
Apipage@{item()}
tablename
的接收器并启用自动创建表。根据要求绘制数据。调试管道,它将成功执行。数据复制成功如下图:

enter image description here

在示例 REST Api 中有两个页面,这就是为什么创建了 2 个包含完整数据的表。

© www.soinside.com 2019 - 2024. All rights reserved.