【发布时间】:2016-01-05 03:55:50
【问题描述】:
将数以万计的小图像文件从我的本地计算机移动到 Azure 云存储中的容器的最快方法是什么?
我正在为 Azure 尝试高度推荐的 CloudBerry 资源管理器,目前估计完成时间约为 4 小时(总共大约 30K 个文件,平均文件大小为 5KB) .这对我来说是不可接受的——我想大幅缩短那个时间。
您能否提出其他选择?我认为非 GUI 的会更快。我将提供一个我尝试过的基于 Linux 的解决方案的示例(如下),该解决方案对我不起作用。也许专家可以指出类似的东西,但有一个正确的用法示例。当涉及到详尽的示例时,下面的解决方案并不是特别有据可查。提前致谢,如果您需要,请随时向我询问更多信息。
我尝试过的基于 Linux 的解决方案称为 blobxfer - 类似于 AzCopy,但适用于 Linux。我使用的命令是blobxfer mystorageaccount pictures /home/myuser/s3 --upload --storageaccountkey=<primary access key from portal.azure.com> --no-container。但我不断收到一个神秘错误:未知错误(其中一个 HTTP 标头的值格式不正确。)
完整的追溯:
<?xml version="1.0" encoding="utf-8"?><Error><Code>InvalidHeaderValue</Code><Message>The value for one of the HTTP headers is not in the correct format.
RequestId:61a1486c-0101-00d6-13b5-408578134000
Time:2015-12-27T12:56:03.5390180Z</Message><HeaderName>x-ms-blob-content-length</HeaderName><HeaderValue>0</HeaderValue></Error>
Exception in thread Thread-49 (most likely raised during interpreter shutdown):
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
File "/home/myuser/.virtualenvs/redditpk/local/lib/python2.7/site-packages/blobxfer.py", line 506, in run
File "/home/myuser/.virtualenvs/redditpk/local/lib/python2.7/site-packages/blobxfer.py", line 597, in putblobdata
File "/home/myuser/.virtualenvs/redditpk/local/lib/python2.7/site-packages/blobxfer.py", line 652, in azure_request
<type 'exceptions.AttributeError'>: 'NoneType' object has no attribute 'Timeout'
【问题讨论】:
-
gzip 文件存档(这需要时间),然后在传输后展开存档(更多时间,但少于发送单个文件)。祝你好运。
-
没有正确答案。除了您使用的工具之外,您还可以尝试其他工具;可以直接使用API/SDK;您可以使用 Azure 提供的 AzCopy;或者你能找到的任何其他东西。您需要自己进行测试。您还需要查看存储 scalability targets 以查看最大存储 API 事务数/秒(2000/blob,20,000/存储帐户)和最大入口(每个 blob 60MB/s,每个帐户 10+ Gbps)和找出最大理论上传性能。
标签: linux azure azure-storage azure-blob-storage