如何使用Azure数据工厂替换Azure SQL数据库中的数据?

qc6wkl3g  于 2023-08-07  发布在  其他
关注(0)|答案(1)|浏览(126)

我想知道是否有可能在每次我的管道摄取新数据时,用最新的数据替换azure sql数据库中的数据。我有一个管道,将数据从Azure Blob存储到Azure SQL,但我面临的挑战是管道每5分钟运行一次,并且它在数据库中的现有表上连接新数据,我希望它在每次管道运行时替换数据。我已经尝试了互联网上的一切,没有任何工作对我来说,现在我的Azure SQL的空间已经耗尽。
任何有帮助的东西都将受到高度赞赏。谢了

isr3a4wc

isr3a4wc1#

如何更新数据取决于数据生命周期。这听起来像你想要一个截断和替换,或合并。
1.创建要报告的登录表和最终表。

  1. ADF复制组件在Sink中具有预脚本功能。在预脚本功能中,截断要将数据引入的表,然后将数据从ADL引入到着陆表。x1c 0d1x
    1.通过 Package 在事务中的存储过程,使用着陆表中的try/catch更新最终表。如果尝试失败,则回滚事务并引发错误。着陆表允许您在事务中 Package truncate,并使用insert防止您在insert问题上拥有一个空表。

截断替换

1.开始交易
1.截断最终表
1.开始尝试
1.从着陆表插入并提交事务
1.开始捕捉
1.回滚事务并引发错误。

合并

1.开始交易
1.开始尝试
1.当在源中发现目标中没有的数据时,则惰性到目标中。
1.当在源中发现目标中存在但不同的数据时,则更新目标。
1.当在目标中发现不在源中的数据时,则从目标中删除。
1.委托交易
1.开始捕捉
1.回滚事务并引发错误。

相关问题