【发布时间】:2012-01-24 19:29:07
【问题描述】:
我想将一个非常大的存储容器从一个 Azure 存储帐户复制到另一个帐户(恰好也在另一个订阅中)。
我想对以下选项发表意见:
-
编写一个工具,使用 CloudBlob 的 DownloadToStream() 和 UploadFromStream() 连接两个存储帐户并一次复制一个 Blob。这似乎是最糟糕的选择,因为它会在传输数据时产生成本,而且速度很慢,因为数据必须下降到运行该工具的机器上,然后重新上传回 Azure。
李> 写一个工人角色来做同样的事情 - 理论上这应该更快并且不会产生任何成本。然而,这是更多的工作。
将工具上传到正在运行的实例,绕过辅助角色部署,并祈祷工具在实例被回收/重置之前完成。
使用现有工具 - 没有发现任何有趣的东西。
对方法有什么建议吗?
更新:我刚刚发现终于为 2012 年 7 月 7 日或之后创建的所有存储帐户引入了此功能(目前仅限 REST API):
http://msdn.microsoft.com/en-us/library/windowsazure/dd894037.aspx
【问题讨论】:
-
Azure Storage Synctool 有点原始 - 仅支持 Storage-to-local(这意味着我需要分两步完成,首先下载我的整个容器,然后重新上传它,这没什么大不了的),而且大多数情况下,它不会恢复-这可能有点问题。我们最终构建的自主解决方案(非常简单)支持恢复、存储到存储并在同一帐户上使用 CopyFromBlob。
标签: azure azure-storage azure-blob-storage replication