Озеро данных (Data Lake)
Концепция data lake появилась как ответ на ограничения классических хранилищ, в которые нужно заранее придумывать схему данных. В озере сначала кладут как есть, а уже потом решают, что и как анализировать.
Что обычно хранится
- Сырые события из продукта в формате JSON.
- Логи и снимки баз данных.
- Выгрузки из внешних систем без обработки.
- Файлы для ML: изображения, аудио, видео, тексты.
Современная архитектура
- Сами файлы лежат в дешёвом облачном хранилище: S3, GCS, Yandex Object Storage.
- Поверх них — открытые форматы (Parquet, ORC) и метаданные (Apache Iceberg, Delta Lake).
- Аналитические движки (Athena, Presto, Trino, Spark) умеют запрашивать данные прямо из озера.
- В сумме это часто называют lakehouse — гибрид озера и хранилища.
Когда применять и когда нет
Применять
- Много разнородных данных, в том числе неструктурированных
- Хочется сохранять историю в исходном виде «на всякий случай»
- Нужны и аналитика, и ML на одних и тех же данных
Не применять
- Маленький проект с парой источников — достаточно одного хранилища и не нужно строить отдельное озеро
Примеры применения
Финтех-компания собирает события из мобильного приложения, банкоматов, веб-кабинета, партнёрских каналов. Все сырые события через Kafka попадают в data lake на S3 в формате Parquet. На основе озера живут и витрины в хранилище для BI, и фичи-сторы для ML-моделей. Если возникает новый аналитический вопрос, который не покрыт текущими витринами, аналитик идёт прямо в озеро и собирает нужную выборку без переделок исходного пайплайна.
Часто задаваемые вопросы
В хранилище данные уже структурированы и приведены к нужной схеме: оно оптимизировано под быстрые SQL-запросы. В озере данные лежат «как есть» и стоят дёшево, но запросы к ним обычно медленнее и требуют более продвинутых инструментов. В современных архитектурах эти подходы сливаются — отсюда термин lakehouse.
Lakehouse — это попытка совместить плюсы озера (дёшевое хранение, любые форматы, ML-данные) с плюсами хранилища (структура, ACID-транзакции, SQL). Реализуется поверх облачного хранилища через форматы вроде Apache Iceberg и Delta Lake. Сейчас это самое популярное направление в развитии аналитических архитектур.