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

使用ADF Copy Activity复制数据中断后能否恢复复制避免重复?

ADF Copy Activity断点续传实现方案

直接重启流水线的话,默认的Copy Activity不会自动跳过已复制的500条记录,会重新执行全量复制。但可以通过两种方案实现从剩余记录继续复制的需求:

方案一:基于水印列的增量复制(推荐)

这是ADF官方支持的断点续传方式,前提是源表有可用于增量判断的字段,比如自增ID、时间戳(如create_time/last_modified)这类能唯一标识记录顺序的列。

  • 配置流程:
    1. 在Copy Activity的源数据集配置里,开启增量复制选项,指定水印列和初始值(首次运行可设为源表的最小ID或最早时间戳)。
    2. 运行时ADF会自动记录每次复制完成后的最大水印值(比如这次失败前复制到ID=500),重启流水线后,Copy Activity会自动从该水印值之后的记录开始复制,也就是剩余的500条。
    3. 目标表需设置主键约束,避免重复插入已复制的记录;如果源数据存在更新场景,可结合目标端的MERGE逻辑替代INSERT。

方案二:手动控制复制范围(无水印列场景)

如果源表没有合适的水印列,可手动拆分复制范围:

  • 第一次运行时,在源查询中指定复制范围(比如WHERE ID BETWEEN 1 AND 500),失败后修改查询条件为WHERE ID BETWEEN 501 AND 1000,再重启流水线。
  • 也可以在流水线中定义变量存储已完成的最大ID,失败后手动更新变量值,让Copy Activity使用该变量作为过滤条件。

关键注意点

  • 若直接重启全量复制,会导致目标表出现重复数据,必须在目标端配置重复处理策略(比如主键冲突时忽略或更新)。
  • 增量复制的水印值由ADF自动跟踪,需确保流水线监控日志正常,保证水印记录不丢失。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 23:25:16