azure - 在 SFTP 中循环多个文件夹并将它们转储到 Blob
问题描述
我有一个文件夹,比如说SFTP中的 A ,这个文件夹有 16 个子文件夹,比如说 A1-P1。每个子文件夹有 20 个csv文件。
在我的 blob 存储中,我有与SFTP名称相似的文件夹(A 包含 A1-P1。我已经能够连接到SFTP,创建了连接,创建了包含 Copy 活动的ForEach容器,但是我不知道这些复制活动将如何连接到 blob 存储中的单个文件夹以将 20 个 csv文件放置在每个子文件夹中。
解决方案
您可以使用Azure 数据工厂。因为你的sftp的文件夹名和存储容器的文件夹名是一样的,所以你可以先用Get Metadata
sftp的文件夹名取回,然后再for each
用来复制文件。
首先创建 sftp 和存储服务:
在Get Metadata
中,您需要设置数据集:
单击open
按钮,然后配置您的 sftp 路径:
然后就可以使用copy data
infor each
来复制文件了,需要配置Source dataset
和 sink 数据集。
点击open
按钮,然后配置file path
,需要用到concat
的拼接路径在Get metadata
:
汇数据集:
推荐阅读
- python-3.x - 带有dict对象的Python构造函数,其中值需要修改
- python - 创建用户输入以搜索 csv 数据框 - python
- java - 为什么竞争条件只能用 ReentrantLock 解决而不是同步
- ruby-on-rails - 向 ActiveScaffold 添加“全选/取消全选”按钮?
- sockets - 如何修复对 socket.io 和 webpack 代理的 cors 请求?
- plsql - PLSQL 中的 NOT 条件
- java - 添加 AppCompatActivity 后我的应用程序退出
- sql - 将表 A 中的列与表 B 中的行值匹配以更新表 B 中的另一列
- python - 在R中创建半圆图
- html - 使用css网格区域时是否可以将单元格自动放置在下一行?