Azure在JAVA中使用暂停恢复功能以块的形式下载大块

问题描述 投票:0回答:1

通过使用Azure blob存储的Java SDK,有没有办法从Azure blob存储中下载具有恢复功能的大文件?

azure download blob azure-storage azure-java-sdk
1个回答
0
投票

绝对没错。根据Azure REST API qazxsw poi for Storage Service的参考,有一个参数qazxsw poi的请求标题用于下载Blob的一部分。

X-MS-范围

可选的。仅返回指定范围内blob的字节数。如果同时指定了Range和x-ms-range,则服务使用x-ms-range的值。如果两者都未指定,则返回整个blob内容。有关更多信息,请参阅Get Blob

因此,您可以通过x-ms-range传递Specifying the Range Header for Blob Service Operations值继续下载过程,以便在工作线程中继续下载blob的完整尾部。

或者考虑到性能,您可以首先获取blob的字节大小,然后使用x-ms-range在多个工作线程中单独下载blob的切片,并将blob切片连接到已完成的切片。

在Azure Storage for Java v8(Legacy)中,直接使用bytes=<the byte size of your downloaded>-x-ms-range方法和参数downloadRangeCloudBlob(它等于offset)。

在Azure Storage for Java v10中,将length对象传递给x-ms-range: <offset>-<offset+length>BlobRange方法。

© www.soinside.com 2019 - 2024. All rights reserved.