Load object
You can load objects into a container in two ways:
- easy download is available through the control panel and API. It can be used for files up to 100 MB in size. We do not recommend using Cyrillic characters in object names;
- segmented loading is only possible via Swift API и S3 API. It is recommended to use it for files larger than 100 MB. We do not recommend using Cyrillic characters in object names.
You can load any number of objects into a container, as long as no container limits are set.
Easy loading
- In the Control Panel, on the top menu, click Products and select Object Storage.
- Go to the Containers section.
- Open the container page → Objects tab.
- Click Upload Files
- Select the objects to load.
Segmented loading
Segmented download is the downloading of objects in parts (segments), which is recommended for files larger than 100 MB.
Segmented upload is only possible via Swift API (SLO/DLO technology) and S3 API (Multipart Upload technology).The process of segmented upload depends on the API and utility used.Some API utilities ( Rclone, Cyberduck) support segmented upload and automatically enable it for objects larger than a certain size.In other cases, it must be initialized manually.
With segmented loading, you can:
- load large objects with smaller segments;
- increase the speed of object loading with the help of parallel queries;
- in case of connection failures, do not reload the object, but repeat loading of only the necessary segments.
When a segmented object is loaded into the main container ( <
container_name >
), a service container is created to hold the object segments:
- when uploading objects via the S3 API, the container is created automatically and is called
<container_name>_s3multipartuploads
; - when loading objects through the Swift API, the container is created using an API or SDK utility and is called
<container_name>_segments
or<container_name>.file-segments
.
In the main container ( <container_name>
) instead of an object, a manifest — a file with a description of segments and the path to them — is downloaded. When the manifest file is downloaded, the segments are automatically substituted into the object.
By default, service containers are not displayed in the dashboard in the list of object store containers — you can enable the display of service containers in the settings.
When loading objects via API, consider the limitations of object storage.Also consider the peculiarities of deleting segmented objects.
Reloading an object
If the name of the object being loaded is the same as the name of the object in the container, the behavior depends on whether versioning is enabled in the container:
-
if versioning is enabled:
- the new object will become the current version of the object and will be assigned a version ID;
- the previous version of the object will not be overwritten by the new one, but will be moved to the list of versions of the object with the same name;
-
if versioning is paused or disabled, the new object will overwrite the previous one.
Download speed
The speed of loading objects into containers is affected:
- channel capacity;
- connection mode;
- download manager programs used;
- the distance between the storage servers and you;
- host load.
Tariffication
Any download method is charged for the amount of storage, the number of requests to the API and outgoing traffic.
- at simple loading the storage volume of the whole object is charged;
- in case of segmented loading, the object is stored in segments, so only segments are actually charged. The manifest file takes a minimal amount of space (a few KB), so the cost of storing an object with segments is almost the same as the cost of storing an entire object.