如何将本地FTP服务器上的压缩文件夹迁移到Azure存储?

问题描述

我有一个带压缩文件夹,其中有几个子文件夹,每个子文件夹中都有很多文件。有些文件是二进制文件,有些是csv,有些是纯文本。我的要求是将zip文件夹直接复制到Microsoft Azure云中,而无需在内部FTP服务器上将其解压缩,就可以了。而且此过程不是一次,而是每当有新的zip文件进入FTP服务器时就定期复制。

解决方法

请参考本教程:Copy data from FTP server by using Azure Data Factory

例如,我的压缩文件包含子文件夹,而每个子文件夹具有不同的文件: enter image description here

使用二进制格式作为源数据集,选择压缩类型:ZipDeflate:

源数据集:

enter image description here

接收器数据集: enter image description here

这可以实现压缩的文件夹副本。

出于您的目的,您希望在将新的zip文件添加到FTP服务器时触发管道。仅对于Data Factory,事件触发器不支持FTP服务器。我们做不到。

我认为您可以使用Logic appFTP trigger来实现:在添加或修改文件(仅限属性)触发器时。

enter image description here

将新添加的zip文件名作为Data Factor管道参数传递,然后运行管道。