Обзор
Данные в Object Storage хранятся в виде объектов. Объектом может быть все, что угодно: текстовые документы, изображения, аудио- и видеофайлы, и т.п. Все объекты хранятся в бакетах. Объекты можно загрузить в бакет через веб-консоль, через API, SDK, а также с помощью утилит командной строки.
Общая информация
Заголовок раздела «Общая информация»Объект – это загруженный в Object Storage файл и его метаданные.
У каждого объекта есть:
- Имя (включая префикс).
- Данные — содержимое объекта. Объем данных ничем не ограничен.
- Метаданные — набор пар «ключ-значение», которые описывают атрибуты объекта — например, дату создания, автора или размер. Подробнее см. в статье Управление метаданными объектов.
- Идентификатор версии — уникальный идентификатор, которые присваивается каждой версии объекта в версионированном бакете.
- Класс хранения — определяет стоимость хранения, производительность операций и доступность объекта.
Именование объектов
Заголовок раздела «Именование объектов»У каждого объекта есть уникальный идентификатор, которые отличает его от других объектов в том же бакете — имя.
Для более удобного структурирования в именах можно использовать разделители — например, myfolder1/myobject1или myfolder1/myfolder2/myobject1.
Имя объекта (включая содержащиеся в нем разделители) в терминологии Object Storage называется ключом объекта.
Внешне ключ объекта ничем не отличается от пути в иерархических файловых системах. При этом папок в буквальном смысле в Object Storage нет: это абстракция, упрощающая работу с объектами. Однако вы можете имитировать работу с папками, чтобы сделать взаимодействие с Object Storage более удобным для пользователя.
Имя объекта должно отвечать следующим требованиям: {#object-name}
- иметь формат UTF-8;
- иметь длину от 1 до 1023 байт;
- не содержать символов :
%; - префикс объекта не может начинаться с символов
/и\.
Доступ к объектам по ссылкам
Заголовок раздела «Доступ к объектам по ссылкам»Ссылка на объект, к которому открыт публичный доступ, имеет один из следующих форматов:
http(s)://storage.mwsapis.ru/<имя бакета>/<ключ объекта>;http(s)://<имя бакета>.storage.mwsapis.ru/<ключ объекта>.
В бакетах с ограниченным доступом в ссылку добавляются дополнительные параметры (подпись, время действия ссылки, список подписанных заголовков и другие):
http(s)://storage.mwsapis.ru/<имя бакета>/<ключ объекта>?<параметры>;http(s)://<имя бакета>.storage.mwsapis.ru/<ключ объекта>?<параметры>.
Классы хранения
Заголовок раздела «Классы хранения»Объекты в Object Storage имеют классы хранения.
Выбор класса хранения позволяет оптимизировать стоимость хранения, производительность и доступность объектов в зависимости от сценариев использования. Поддерживаются следующие классы хранения:
Стандартный (
STANDARD) — универсальный класс. Обеспечивает баланс между скоростью записи и стоимостью хранения. Предназначен для данных приложений и медиаконтента.Теплый (
WARM) — класс, обеспечивающий наиболее высокую скорость доступа и загрузки объектов. Предназначен для высоконагруженных проектов и машинного обучения.
Класс хранения можно задать на уровне бакета. Этот класс хранения применится к объектам, загруженным без указания своего класса хранения.
Класс хранения задается двумя способами:
- непосредственно при загрузке объекта в бакет;
- при создании бакета в качестве класса хранения по умолчанию.
Особенности и ограничения
Заголовок раздела «Особенности и ограничения»- Максимальный размер объекта, который можно загрузить за одну операцию, составляет 5ГБ.
- В имени объекта и префиксах можно использовать допустимые символы в кодировке ASCII или UTF-8. Длина имени вместе со всеми префиксами не должна превышать 1024 байта в UTF-8 кодировке.
- Папок в Object Storage нет. Вы можете имитировать работу с папками, чтобы обеспечить удобство использования ваших приложений и сервисов.