Azure地理复制非常适合减少更新期间的停机时间

时间:2018-08-08 19:09:29

标签: azure azure-sql-database

我们当前有一个支持Web应用程序的Azure SQL数据库。从用户角度来看,它是只读的。问题是我们必须每小时删除一次表并向其重新加载新数据,这使应用程序每小时无法使用5分钟,这是不可接受的。

读取Azure动态地理复制的信息似乎有点含糊。我以为我可以使用主动地理复制来故障转移到辅助数据库并使主数据库脱机以进行更新,然后在更新完成后切换回原始主数据库以允许辅助数据库自动同步。但是,从这种情况下,从我所读到的有关主动地理复制的内容尚不清楚。

有人可以提供有关此问题的帮助,还是可以指导我寻求另一种可能的解决方案。

谢谢

2 个答案:

答案 0 :(得分:0)

您可以尝试使用Azure数据工厂,因为当SQL Server / SQL Azure用作“接收器”时,它允许您在复制期间将数据追加到目标表或使用自定义逻辑调用存储过程。您可以了解更多here

Azure Data Factory允许您使用具有最后更新的时间戳或递​​增键的水印列在初始完整数据加载后增量加载数据(增量)。增量加载解决方案在旧水印和新水印之间加载更改的数据。您可以在this文章中了解有关如何使用Azure Data Factory进行操作的更多信息。

答案 1 :(得分:0)

如果安装过程需要5分钟,并且数据是只读的,那么我将每小时使用一些C#代码或PowerShell脚本制作一个新的空数据库,并在此新的空数据库上运行数据导入,然后完成后,我将在运行的生产应用程序中更改连接字符串以指向数据库的新更新版本,然后删除旧数据库。这样,您将不会有任何停机时间,因为在导入运行之前,应用程序将连接到旧数据库,并且在导入完成后,它将连接到新数据库。