Blob storage (Binary Large Object storage) — объектное хранилище облака, где данные хранятся как плоские объекты с уникальным ключом и метаданными. Нет иерархии директорий (только плоское пространство имён), доступ через HTTP REST API — обычно совместимый с Amazon S3.
Как работает
Каждый объект состоит из трёх частей: данные (бинарный blob), ключ (уникальное имя, например photos/2024/img001.jpg) и метаданные (произвольные key-value пары). Объекты группируются в бакеты (bucket, контейнер).
Репликация: данные автоматически копируются в 3+ экземпляра внутри одного региона (LRS — Locally Redundant Storage) или между зонами доступности (ZRS) или регионами (GRS). Azure Blob Storage GRS хранит 6 копий в двух регионах.
Класс хранилища определяет стоимость и задержку доступа. AWS S3: Standard ($0.023/ГБ·мес), Infrequent Access ($0.0125/ГБ·мес), Glacier ($0.004/ГБ·мес). Восстановление из Glacier занимает от 1 минуты до 12 часов.
История
Amazon S3 появился в марте 2006 года — первое коммерческое объектное хранилище. Azure Blob Storage запустился в 2010 году. Google Cloud Storage — в 2010 году. Selectel и другие российские провайдеры запустили S3-совместимые хранилища в 2013-2015 годах.
Классы хранения
- Hot — часто используемые данные, максимальная скорость, максимальная цена.
- Cool / Infrequent Access — редко запрашиваемые данные, ниже цена, выше цена на операции.
- Archive / Glacier — долгосрочный архив, минимальная цена, восстановление занимает часы.
Связь с хостингом
Blob storage заменяет файловую систему сервера для статических файлов: изображения, CSS, JS, видео отдаются напрямую из хранилища через CDN, не нагружая веб-сервер. Резервные копии серверов и баз данных хранятся в object storage как cold tier: дешевле чем на SSD, но быстрее чем на ленточных носителях.
Ключевые отличия от похожих терминов
Block storage (блочное хранилище) подключается к VM как диск и требует файловой системы. File storage (NFS/SMB) имеет иерархию директорий. Object storage — плоское, без монтирования, через API, для неограниченного масштабирования.
Применение Blob/Object Storage
Статические файлы сайта: изображения, CSS, JS. Медиаконтент: видео, аудио. Резервные копии БД. Логи. Артефакты сборок CI/CD. S3-совместимые API: AWS S3, Cloudflare R2, Yandex Object Storage, Selectel Object Storage.
S3 API и инструменты
Базовые операции: PUT, GET, DELETE. Мультипарт-загрузка для файлов >5 ГБ. Presigned URLs — временные ссылки для прямой загрузки без публичного доступа. Инструменты: s3cmd, AWS CLI, rclone (поддерживает 40+ провайдеров). SDK: boto3 (Python), aws-sdk-js (Node.js).
CDN + Object Storage
Object Storage + CDN — стандарт для статики. Cloudflare R2 + Cloudflare CDN: нет исходящего трафика (egress бесплатный). Yandex Object Storage + Yandex CDN. Для WordPress: плагины WP Offload Media переносят загрузки в S3 и раздают через CDN.
Versioning и Lifecycle Policies
Versioning: хранение всех версий объекта — защита от случайного удаления. Lifecycle Policy: автоматический переход в более дешёвый класс хранения (STANDARD → STANDARD_IA → GLACIER) или удаление через N дней. Для бэкапов: lifecycle rule delete after 90 days. Стоимость снижается на 40–70%.