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

如何在Azure Data Factory中用数据流拉取当日最后修改文件并避免重复?

Blob到Blob管道仅处理当日文件&避免重复的解决方案

1. 基于文件创建/修改时间直接筛选

在Blob到Blob的复制活动源配置中,添加文件筛选条件,仅拉取当日产生的文件:

  • 进入复制活动的「源」设置,找到「文件筛选器」模块
  • 设置LastModifiedDate的范围:起始值用动态内容 @startOfDay(utcNow()),结束值用 @utcNow()
  • 若本地文件上传到Blob时保留了原始创建时间,可替换为CreatedDate来筛选

2. 处理后标记已处理文件

通过文件重命名/移动实现精准去重:

  • 管道完成数据流处理后,添加「Blob重命名」活动,将input容器中已处理的文件移至input/processed子文件夹,或给文件名添加_processed后缀
  • 下次运行管道时,源筛选器排除processed路径或带_processed后缀的文件,确保只处理新文件

3. 用水印表跟踪处理进度(适合跨天/延迟上传场景)

  • 在SQL数据库中创建一张水印表,比如process_watermark,存储字段last_processed_time
  • 管道启动时,先从水印表读取上次处理的时间戳,作为Blob筛选的起始时间(结束值仍为@utcNow())
  • 处理完成后,更新水印表的last_processed_time为当前时间,确保每次只处理新增文件

配置注意点

  • 管道设置为每日定时触发(比如UTC时间凌晨运行),避免无意义的重复触发
  • 若使用数据流,需在数据流的源数据集同步设置相同的时间筛选条件,防止数据流读取所有文件

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 09:35:21