Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure 使用AzCopy复制大量小水滴_Azure_Azcopy_Azure Blob Storage - Fatal编程技术网

Azure 使用AzCopy复制大量小水滴

Azure 使用AzCopy复制大量小水滴,azure,azcopy,azure-blob-storage,Azure,Azcopy,Azure Blob Storage,我正在尝试从一个存储帐户向另一个帐户增量复制约500.000个blob 然而,似乎如果我不指定/Pattern:parameter,AzCopy将永远挂起,永远不会完成。。(我实际上在大约15分钟后停止了这个过程) 50万(可能高达500万)的BLOB对AzCopy来说是否太多而无法处理,还是我在这里遗漏了什么 我使用的命令如下所示: AzCopy /Source:<src>/documents /SourceKey:<srcKey> /Dest:<dest>

我正在尝试从一个存储帐户向另一个帐户增量复制约500.000个blob

然而,似乎如果我不指定/Pattern:parameter,AzCopy将永远挂起,永远不会完成。。(我实际上在大约15分钟后停止了这个过程)

50万(可能高达500万)的BLOB对AzCopy来说是否太多而无法处理,还是我在这里遗漏了什么

我使用的命令如下所示:

AzCopy /Source:<src>/documents /SourceKey:<srcKey> /Dest:<dest>/documents /DestKey:<deskKey> /S /XO /Y
AzCopy/Source:/documents/SourceKey:/Dest:/documents/DestKey:/S/XO/Y
添加/pattern参数可以解决这个问题,但是我想要容器中所有blob的完整副本


我必须补充一点,它已经成功地复制了所有的blob,但后续的运行失败了,因为它必须“找出”自上次完全备份以来添加了哪些blob

您使用的是哪个版本的AzCopy?我想这个问题已经在很多版本中修复了。。。几个版本之前,AzCopy需要列出所有要下载的blob,然后才能开始传输;目前AzCopy可以同时进行挂牌和转账


有关下载最新版本的AzCopy并查找更多信息,请参阅。

我建议通过类似Fiddler的方式跟踪请求/响应,以便您知道AzCopy在您认为它挂起的情况下正在做什么。Fiddler无法真正显示通信,因为它是https,但我可以在资源监视器中看到AzCopy的恒定带宽使用率,大约200kB/s上传和400kB/s下载到blob.am3prdstr01a.store.core.windows.net。因此,我假设它正在对源和目标中的blob进行比较…?您可以在Fiddler()中解密HTTPS流量。我认为你的怀疑是对的。谢谢你的提示。是的,通过调查Fiddler的流量,发现AzCopy正在对目标存储帐户中的所有Blob逐个执行head请求。。。HEAD/documents/152185?timeout=300 HTTP/1.1我(不正确)认为AzCopy“异步”执行这些操作,即仅在源存储和目标存储之间执行,而不涉及AzCopy运行的客户机。。情况似乎并非如此。版本3.2.0.93。它可能同时进行列表和传输,但它一次只列出一个目标blob,正如你在我对原始帖子的评论中所看到的,这是出于设计。如果指定了选项/XO或/XN,AzCopy需要逐个获取目标Blob,以便获取其LastModifiedTime。