Объектное хранилище S3 позволяет хранить массивы данных любого размера: от небольших файлов до петабайтных массивов. В этой статье разбираем архитектуру облачных хранилищ и рассказываем, почему бизнес отдаёт предпочтение объектной модели хранения.
Как хранятся данные?
Есть три основных типа облачных хранилищ: файловое, блочное и объектное. Каждое из них использует свои собственные интерфейсы и протоколы, но все они предназначены для одной цели — хранения данных. Выбор подходящего типа хранилища зависит от конкретных требований и ожидаемой рабочей нагрузки
Файловая система
Файловое хранилище (File Storage) — это метод организации и управления данными, аналогичный традиционной файловой системе на компьютере. Данные сохраняются в облачных директориях и папках. Каждому файлу присваиваются метаданные, например имя, размер, временные метки.
Файловые системы используют стандартные протоколы доступа к файлам NFS, что делает их совместимыми со многими приложениями и устройствами. Они идеальны для управления структурированными данными и работы приложений, которым нужен общий доступ к файлам.
Главное преимущество — знакомая иерархическая структура, которая не требует специальных навыков для настройки и управления. Среди недостатков: ограниченная вместимость и плохая масштабируемость. Поэтому файловая система подходит для начального этапа, но с увеличением объёма данных может стать неудобной.
Блочное хранилище
Блочное хранилище (Block Storage) делит данные на равные блоки и сохраняет их как отдельные фрагменты. Каждый блок имеет уникальный адрес, но не содержит метаданных.
Блок — это не файл или завершённый объект, а просто фрагмент необработанных данных, имеющий фиксированный размер. Каждый блок работает как отдельный жёсткий диск. Пользователь видит дисковый том в интерфейсе ОС сервера.
Разработчики часто выбирают Block Storage, когда важны высокая скорость ввода-вывода и минимальная задержка доступа к данным через SAN. Это особенно актуально для серверов баз данных, транзакционных систем и вычислительных приложений.
Блочное хранилище ценится за производительность, гибкость и надёжность, но не подходит для масштабирования до терабайтов данных и выше. Ещё один недостаток — высокая стоимость.
Объектное хранилище
Объектное хранилище (Object Storage) хранит данные в виде отдельных объектов, а не блоков или файлов. Каждый объект состоит из:
- ключа — это уникальный адрес объекта (URL);
- данных — фактическое содержимое объекта;
- метаданных — дополнительная информация.
В хранилище S3 (simple storage service) информация хранится в плоской структуре без иерархии. Адрес и метаданные помогают быстро находить нужные файлы через HTTP API. Доступ к Object Storage осуществляется через веб-консоль или командную строку.
Для удобства работы все объекты в хранилище группируются в бакеты (buckets) — это логические единицы, которые служат для организации хранения в Object Storage. Если просто, то их называют корзинами или контейнерами. Название каждого объекта должно быть уникальным в рамках бакета, а названия бакета — уникальным во всём хранилище.
Объектное хранилище подходит для хранения видео, аудио, изображений, текстовых документов, файлов Excel, HTML, CSS, XML, JSON и других неструктурированных данных. А это более 80% всей информации.
Особенности облачного объектного хранилища
Первое, что отличает файловое хранилище S3, — это его вместимость. Объекты могут быть от нескольких килобайт до терабайт, и в одном бакете может храниться несколько миллиардов объектов.
Вторая особенность — это высокая надёжность и долговечность. Резервные центры обработки данных расположены в разных географических точках. В случае выхода из строя одного ЦОД, второй возьмёт на себя критически важные нагрузки. Георезервирование обеспечивает непрерывность бизнес-процессов в случае сбоев, стихийных бедствий, кибератак или других чрезвычайных ситуаций.
Почему бизнес выбирает облачное объектное хранилище
Компании предпочитают Object Storage из-за возможности хранить большие объёмы данных в едином пуле и управлять ими, учитывая три ключевых фактора: масштабируемость, скорость и экономическую эффективность.
Файловое хранилище используется для хранения:
- больших данных и результатов машинного обучения;
- резервных копий и архивов;
- большого количества мультимедийных ресурсов: изображений, графики, видео или аудиофайлов;
- персональных данных, которые нужно защищать от утечек;
- статических веб-сайтов, которые автоматически масштабируются в соответствии с требованиями к трафику;
- неактивных данных компании, к которым редко обращаются;
- артефактов: журналов и файлов версий, которые создаются в течение жизненного цикла приложения.
Почему разработчики используют хранилища S3
Объектные хранилища легко интегрируются с любыми приложениями, например мобильными играми и системами документооборота. Они идеально подходят для видеохостингов, которые обслуживают десятки тысяч одновременных запросов и мгновенно передают большие объёмы данных.
Разработчики часто используют Object Storage для экспериментальных проектов с непредсказуемой нагрузкой. Например, для R&D-проектов и тестирования стартапов с помощью MVP (минимально жизнеспособного продукта).
Раньше для запуска таких проектов нужно было закупать дополнительное оборудование, что приводило к дополнительным тратам и растягивалось на месяцы. При этом неправильный расчёт необходимого объёма ресурсов мог привести к перегрузке системы, что затрудняло её дальнейшую работу и требовало сложных исправлений. Сейчас же в облаке можно мгновенно получить необходимые ресурсы и изменять их объём по мере необходимости.
Классы и тарифы объектных хранилищ
Стоимость облачного хранилища S3 зависит от его класса и интенсивности использования.
Холодное хранилище предназначено для информации, которой пользуются редко, например для резервных копий и архивов. Стоимость хранения будет ниже, правда запросы и трафик обойдутся дороже.
Стандартное хранилище подходит для работы с информацией, к которой обращаются регулярно. Здесь более высокой будет стоимость хранения, но запросы не тарифицируются, а стоимость исходящего трафика такая же, как и в холодном хранилище.
Компания МТС Web Services использует прозрачную модель оплаты: за объём и трафик в стандартном хранилище или за объём, трафик и запросы в холодном. Это значит, что нет скрытых платежей или ограничений.
Как начать работу с объектным S3-совместимым хранилищем
Инструменты для работы с объектным хранилищем, которые доступны в MWS.
AWS CLI. Командная строка для работы с Object Storage от Amazon S3 для загрузки, скачивания и управления файлами через терминал.
WinSCP. Графическая утилита для Windows, предназначена для управления файлами в S3 через удобный интерфейс.
CyberDuck. Графический клиент для macOS и Windows, а также консольный клиент для Linux. Упрощает управление файлами в облаке.
Rclone. Командная строка для управления файлами в облачном хранилище. Поддерживает синхронизацию и копирование файлов между разными облачными хранилищами.
Как хранить данные и соблюдать закон
Ответственность за безопасность данных лежит на провайдере. Хранилища должны соответствовать требованиям Федерального закона
Объектное хранилище MWS имеет аттестованный сегмент, который соответствует требованиям
По умолчанию в Object Storage есть несколько компонентов защиты. Например, доступ к файлам осуществляется по протоколу HTTPS, физические носители расположены в защищённых дата‑центрах MWS, а сама информация хранится в зашифрованном виде. Для каждого контейнера можно установить права доступа для пользователей: разрешить только чтение или предоставить доступ на чтение и запись.
Попробовать объектное хранилище в работе вы можете, заказав бесплатный тест-драйв на официальном сайте MWS. Наши специалисты помогут настроить хранилище под ваши бизнес-задачи.