You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Storage增量文件ADF模板配置:复制至Snowflake及文件替换方案

一、让ADF Copy Data任务自动匹配Incremental-*.csv文件

1. 配置Blob存储数据集

打开或新建Azure Blob存储的数据集,在「连接」页签里选好目标容器和文件夹,文件名直接填Incremental-*.csv即可——这个通配符会自动捕捉所有以Incremental-开头的CSV文件,不管后面跟着的Pipeline ID是什么。

2. 配置Copy Data任务

  • 源端选择刚才配置好的Blob数据集,默认的「复制所有文件」就能满足需求;如果只想处理最新的文件,后续结合清理旧文件的步骤控制即可。
  • 目标端配置Snowflake数据集,完成表连接和字段映射,确保数据能正确写入目标表。
二、实现Blob文件夹始终只留最新文件

用ADF的几个活动组合就能自动清理旧文件,步骤如下:

1. 获取文件夹内所有目标文件

添加一个「Get Metadata」活动,连接到目标Blob文件夹,勾选「子项」选项,获取文件夹内所有文件的列表及属性(比如最后修改时间)。

2. 筛选出要删除的旧文件

添加「Filter」活动,将Get Metadata返回的子项作为输入,设置两个过滤条件:

  • 先筛选出文件名以Incremental-开头、后缀为.csv的文件;
  • 再排除掉最后修改时间最新的文件,用表达式 @not(equals(item().LastModified, max(activity('Get Metadata').output.childItems.LastModified))) 即可实现。

3. 批量删除旧文件

添加「ForEach」活动,遍历Filter输出的旧文件列表,在循环体内添加「Delete」活动,逐个删除旧文件。

关键提醒

这套清理流程要放在Copy Data任务之后执行——必须等新文件完成复制,再删除旧文件,避免数据丢失。如果上游生成新文件的环节可控,也可以在生成新文件前先删除文件夹内所有Incremental-*.csv文件,这样文件夹里永远只会保留刚生成的新文件。

内容的提问来源于stack exchange,提问作者Oleg

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 18:25:58