Общий порядок составной (multipart) загрузки
Составная загрузка позволяет сохранять объекты в Object Storage по частям. Это может пригодиться при загрузке или копировании больших объектов. Рекомендуем использовать составную загрузку для объектов от 100 МБ.
Информацию о максимальном размере объекта для загрузки смотрите в разделе Квоты и лимиты в Object Storage.
Составная загрузка состоит из следующих шагов:
-
Инициализация загрузки.
Пользователь отправляет запрос на начало составной загрузки, а Object Storage возвращает идентификатор, который следует использовать для всех последующих операций с загрузкой.
Пользовательские метаданные объекта следует передавать на этом этапе загрузки. -
Загрузка объекта по частям.
Каждая часть объекта отправляется отдельным запросом и должна иметь порядковый номер, который используется для сборки объекта на стороне Object Storage. Если Object Storage получит две части объекта с одинаковыми номерами, то сохранит последнюю пришедшую.
Для каждой загруженной части Object Storage возвращает заголовокETag
в ответе. Пользователь должен сохранить номера и соответствующие имETag
для всех загруженных частей. Это необходимо для операции завершения загрузки.
В процессе загрузки можно получить от Object Storage список уже загруженных частей объекта. -
Завершение загрузки.
При получении запроса на завершение загрузки Object Storage собирает все загруженные части в единый объект и присоединяет к объекту метаданные, которые были переданы при инициализации загрузки.Примечание
Пока загрузка не завершена, части объекта сохраняются по отдельности и занимают место, при этом их нельзя получить из Object Storage. Незавершенные загрузки учитываются при расчете занятого места.
Помимо запроса на завершение загрузки пользователь может отправить запрос о прерывании загрузки. В этом случае Object Storage удалит все полученные части объекта для заданной загрузки и удалит саму загрузку.
После завершения или прерывания загрузки пользователь не сможет более использовать идентификатор загрузки в запросах.
Пользователь может одновременно запустить несколько составных загрузок.
Можно получить список незавершенных загрузок.
Методы составной загрузки:
Метод | Описание |
---|---|
startUpload | Инициализирует составную загрузку. |
uploadPart | Загружает часть объекта. |
copyPart | Копирует часть объекта. |
listParts | Выдает список загруженных частей. |
abortUpload | Прерывает составную загрузку. |
completeUpload | Завершает составную загрузку. |
listUploads | Выдает список незавершенных загрузок. |