azure 根据ADF中的记录数拆分json文件

np8igboo  于 2023-04-22  发布在  其他
关注(0)|答案(1)|浏览(115)

我正在使用Azure数据工厂中的Copy data activity读取restapi json并将其保存在blob中作为json文件。如果文件中的记录数超过200 k条记录,我希望将文件拆分为多个文件。(例如:一个文件中的最大记录数是200 k)我如何才能实现这个Azure数据工厂复制数据活动。
先谢谢你了!

ljo96ir5

ljo96ir51#

如果接收器是分隔文本,您可以使用复制活动本身将较大的文件拆分为较小的文件。为了做到这一点,在复制活动的接收器设置中,您可以为Max rows per file指定所需的值。

接收器文件将以<sourcefilename>_<000xx>.txt创建。

  • 要使用数据流拆分文件,请执行以下步骤。

1.使用源json数据集进行源转换。
1.然后对每一行进行代理键转换和row_number。设置start value和step value为1。在这个演示中,我创建了一个名为row_num的列作为代理键。

1.然后添加派生列转换并添加一个新列。该列的值为toInteger((row_num-1)/10)。这里row_num是在第二步中创建的代理键列。10表示每个文件中的最大行数应为10。您可以将该值替换为所需的数字。

1.然后再次添加派生列转换以将文件名添加为列。

1.然后使用json数据集添加一个sink转换。在sink设置中,给予Name file as column data作为文件名选项值。将file_name作为列名值。

如果运行包含此数据流的管道,则将大Json文件拆分为最多包含10行的较小文件。

相关问题