#azure #download #blob #azure-storage #azure-java-sdk
#azure #Скачать #большой двоичный объект #azure-хранилище #azure-java-sdk
Вопрос:
Есть ли способ загрузить большой файл из хранилища больших двоичных объектов Azure с функцией возобновления с помощью Java SDK для хранилища больших двоичных объектов Azure?
Комментарии:
1. Вы уже что-нибудь пробовали?
2. Я новичок в Azure, я попробовал метод BlockBlobURL.download для загрузки фрагментов, и он отлично работает. Но это не удовлетворяет моему единственному варианту использования, поскольку он не может возобновить загрузку, когда во время загрузки возникает ошибка.
3. @RajanPatidar Какую версию Azure Stoarge SDK для Java вы использовали сейчас?
Ответ №1:
Абсолютно да. Согласно ссылке Azure REST API Get Blob
для службы Stoage, существует параметр x-ms-range
заголовков запросов для загрузки части большого двоичного объекта.
x-ms-диапазон
Необязательно. Возвращает только байты большого двоичного объекта в указанном диапазоне. Если указаны как Range, так и x-ms-range, служба использует значение x-ms-range. Если ни то, ни другое не указано, возвращается все содержимое большого двоичного объекта. См. Указание заголовка диапазона для операций службы больших двоичных объектов для получения дополнительной информации.
Таким образом, вы можете возобновить процесс загрузки, передав x-ms-range
значение с bytes=<the byte size of your downloaded>-
в continuous, чтобы загрузить полный конец большого двоичного объекта в рабочем потоке.
Или, учитывая производительность, вы можете сначала получить размер большого двоичного объекта в байтах, а затем использовать x-ms-range
для загрузки фрагментов большого двоичного объекта отдельно в нескольких рабочих потоках и объединения фрагментов большого двоичного объекта в завершенный.
В Azure Storage для Java версии 8 (устаревшей), чтобы напрямую использовать downloadRange
метод CloudBlob
с параметром offset
и length
(он равен x-ms-range: <offset>-<offset length>
).
В Azure Storage для Java версии 10, чтобы передать BlobRange
объект download
методу BlobURL
.
Комментарии:
1. Спасибо. Я почерпнул идею из этого.