【发布时间】:2015-10-02 12:37:35
【问题描述】:
我目前正在学习 blob 块存储。我想将块 blob 从一个存储复制到另一个存储帐户。通常在从系统上传到云时,我看到的示例是计算块大小,然后使用 PutBlock 和 PutBlockList。我想使用相同的方法从一个存储帐户复制到另一个。使用 DownloadBlockList 我可以获取 blockid,但我无法获取与 block id 关联的数据。
CloudStorageAccount storageAccount = CloudStorageAccount.Parse( ConfigurationManager.AppSettings["StorageConnectionString"]);
CloudBlobClient cloudBlobClient = storageAccount.CreateCloudBlobClient();
CloudBlobContainer container = cloudBlobClient.GetContainerReference("input");
CloudBlockBlob blob = container.GetBlockBlobReference("Cloud.mp4");
List<string> commitedBlocks = new List<string>();
IEnumerable<ListBlockItem> blockItem = blob.DownloadBlockList(BlockListingFilter.All);
commitedBlocks.AddRange(blob.DownloadBlockList(BlockListingFilter.Committed).Select(id => id.Name));
);
如果我能够获取与块 id 关联的数据,那么我可以对块进行并行复制。
谢谢
【问题讨论】:
-
一个澄清问题:您想将 blob 从一个存储帐户复制到另一个存储帐户,还是将文件并行上传到多个存储帐户?
-
我所做的更多是为了我的学习。我想从一个存储帐户复制到另一个。如果正确,希望并行复制块以更快地复制