Azure数据工厂-重试插入复制活动(AzureSQL DB)



我们有两次间歇性的复制活动运行到

从服务器。(provider: TCP provider, error: 0 -存在连接被远端主机强制关闭。)下次运行时,问题是

对于SQL来说,如果100k条记录被批处理成10k条记录,如果在复制活动中发生了什么事情,我们最终会得到重复的记录吗?我相信复制活动不被视为单个DB事务。

对于SQL中的UPSERT(复制活动),我们确实启用了重试,因为键列将确保不会创建重复项。我们想知道我们是否也可以为INSERT(复制活动)启用重试。

在我们的其他项目中,我们确实为那些涉及文件的复制活动启用了重试(因为每个链接,文件只会在失败的那个上拾取)。https://learn.microsoft.com/en-us/azure/data-factory/copy-activity-overview resume-from-last-failed-run

恢复发生在文件级。如果复制活动在复制时失败文件,在下次运行时,这个特定的文件将被重新复制。

问题是-是否安全启用重试复制活动做SQL插入(Azure SQL到另一个Azure SQL表)?当在操作过程中发生短暂错误时,它会导致我们遇到重复的记录吗?

不幸的是,adf中的复制活动不是事务绑定的,除非涉及到预先脚本,否则复制活动只会附加数据,从而创建副本。因此,理想的最佳方法是将其复制到一个staging表中,然后利用存储过程活动移动到将绑定在事务

中的最终表中。

相关内容

  • 没有找到相关文章

最新更新