我有三个不同的Azure存储blob容器,用于服务网站内容,一个用于生产,一个用于分期和一个用于开发。
我的目标是每天或每周同步分期和开发,以便它们与生产相匹配。
我在PowerShell中收集了一些原理上有效的东西,但它速度慢,难度大。它涉及删除暂存容器和dev容器,然后复制整个生产容器两次。对于20k项,整个过程需要超过一个小时。
考虑到一周内只有几百个项目可能发生变化,德尔塔操作的速度可能会更快。
有人见过可以在Azure存储blob容器之间执行增量复制的工具或方法吗?我可能最终会写我自己的工具,但我想看看目前是否有任何工具。
发布于 2019-11-11 23:23:14
我今天重温了AzCopy工具,发现它已经走了很长一段路,并且很好地实现了这个目的。标志是AzCopy同步,还有许多控制选项,比如删除目标上不存在的目标文件。
可能是由于Azure架构或基础设施的改进,这种传输速度也非常快。它在不到60秒内完成了10 of的初始同步。在此之前,这需要一个小时或更长时间。
发布于 2018-02-13 12:34:11
不幸的是,没有一个好的方法来做到这一点。正如您已经看到的,像AZCopy这样的工具会为您移动文件,但是它们不会执行增量复制或同步。
您可以自己在PowerShell中执行一些操作,在这些blobs中运行并检查它们是否存在于目标中,然后比较修改后的日期或文件哈希之类的内容,但不幸的是,我无法想象这会特别快。
发布于 2018-07-17 15:00:12
我知道这是个很旧的帖子,但我只是偶然发现它,我想我会把一个想法扔进锅里,它需要每天运行/每周运行吗?您可以使用类似Logic的blob存储触发器或函数与blob触发器吗?这将立即触发,因此存储帐户总是同步的。
另一种选择是使用触发器将增量插入到存储帐户/数据库中,然后每天/每周处理大量更改。
https://serverfault.com/questions/896954
复制相似问题