Все сидят на S3!
Если сейчас вы ходите по собесам, то почти везде либо сидят на S3-хранилище, либо планируют на него переехать.
И вот тут важно понимать, что S3 — это не просто «папка в облаке, куда можно закинуть файлик». Давайте поясню.
Представьте, что у нас есть есть у нас разные источники:
📍 API
📍 базы данных
📍 логи приложений
📍 внешние системы
📍 какие-то файлы от пользователей
И всё это добро мы складываем в S3.
Например, pipeline дата-инженера может выглядеть так:
API → S3 raw → Spark/PySpark → S3 processed → ClickHouse
Сначала данные попадают в бакет raw в исходном виде. Потом ETL-процесс забирает их из S3, преобразует и сохраняет результат в processed.
Причём в S3 можно хранить не только сами данные.
Туда же можно положить:
— логи
— резервные копии
— JAR-файлы с кодом на Scala для Apache Spark
— Python-файлы для запуска PySpark-задач
Получается довольно универсальный слой. В одном месте лежат исходные данные, обработанные данные, код и результаты работы.
И по факту далеко не все команды (даже меньшая часть) разворачивают свой собственный open source MinIO.
Потому что запустить MinIO несложно. Дальше начинаются диски, серверы, репликация, мониторинг, бэкапы, отказоустойчивость, доступы и так далее.
В итоге у компании появляется ещё один сервис, который нужно постоянно поддерживать.
А бизнесу, если честно, обычно всё равно, MinIO там внутри или какой-то другой S3. Ему нужно, чтобы данные надёжно хранились, быстро читались и были доступны нужным системам.
Поэтому многие выбирают облачный Object Storage.
Например, в MWS Cloud Platform есть S3-совместимое Object Storage. Это значит, что для работы можно использовать привычные AWS CLI, SDK и другие инструменты. Не нужно переписывать весь pipeline только потому, что изменилось хранилище.
Данные в MWS хранятся в двух дата-центрах с избыточной репликацией. Есть автоматическое шифрование, версионирование и управление жизненным циклом объектов.
Можно выбрать класс хранения под задачу:
— стандартный — для приложений и регулярного доступа;
— тёплый — для датасетов, аналитики и машинного обучения;
— холодный — для архивов, логов и резервных копий.
А это платно?
Да. Представьте, что вы покупаете доступ к готовому хранилищу, которое за вас уже настроено. Если вы просто загрузили данные и храните их, основная плата будет именно за занятый объём. Дополнительно учитываются только обращения к файлам и скачивание данных из хранилища. Загрузка данных в Object Storage не тарифицируется как исходящий трафик.
То есть если вы положили в S3 датасет, JAR-файл для Spark или Python-скрипт для PySpark и почти не скачиваете их, стоимость будет в основном зависеть от объёма хранения и выбранного класса — стандартного, тёплого или холодного.
Подробнее о тарификации MWS
Короче, S3 это прям современный инструмент для Дата Инженера. Это я еще не говорю о надстройках, которые можно навесить поверх.
Протестировать MWS Cloud Platform
Post #920
2.25K

- ❤ 14
- 👍 4
- 🤔 2