Инженерия данных

Warehouse, Lake, Lakehouse

Хранилище, озеро, lakehouse

актуальноТекущий рабочий стандарт

Три способа хранить аналитические данные: строгая схема, сырые файлы или гибрид с транзакциями поверх объектного хранилища.

Ключевые тезисы

  • Warehouse (ClickHouse, BigQuery) — схема при записи, быстрые запросы, дороже хранение.
  • Lake (S3 + Parquet) — схема при чтении, дёшево и гибко, но легко превращается в свалку.
  • Lakehouse (Delta, Iceberg) добавляет к озеру транзакции, версии и time travel.

Подробный разбор

2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.

1

Три архитектуры

Что выбрать под задачу.

WarehouseLakeLakehouse
Схемапри записипри чтениипри записи, гибко
Стоимость хранениявысокаянизкаянизкая
Транзакцииестьнетесть
Типы данныхструктурированныелюбыелюбые
Типичный стекClickHouse, BigQueryS3 + ParquetDelta, Iceberg
На практике

Для ML критична возможность получить срез данных на прошлую дату. Lakehouse даёт это из коробки (time travel), в озере это придётся организовывать партициями и снапшотами.

2

Слои данных

Bronze, silver, gold — и зачем нужен каждый.

  1. Bronze: сырые данные как пришли, без изменений. Нужны для пересчёта после исправления логики.
  2. Silver: очищенные, типизированные, дедуплицированные таблицы.
  3. Gold: витрины под конкретные задачи — отчёты, признаки для моделей.

Модель обучается на gold-слое, но воспроизводимость обеспечивает bronze: если через полгода выяснится ошибка в трансформации, историю можно пересчитать.

Связанные темы

Платформа данных

File Formats80%

Форматы хранения · Инженерия данных

Колоночные форматы против строковых: почему Parquet почти всегда лучше CSV для аналитики.

Partitioning80%

Партиционирование · Инженерия данных

Разделение данных по ключу (обычно по дате), чтобы запрос читал минимум файлов.

Analytical SQL80%

Аналитический SQL · Инженерия данных

Оконные функции, агрегации и CTE — основной инструмент подготовки признаков на больших данных.

ETL vs ELT80%

ETL и ELT · Инженерия данных

Преобразовывать данные до загрузки или уже внутри хранилища — и почему индустрия сместилась ко второму.

Batch and Streaming80%

Батч и стриминг · Инженерия данных

Обработка по расписанию против непрерывной обработки событий. Разные задержки, разные гарантии, разная стоимость.

Orchestration80%

Оркестрация пайплайнов · Инженерия данных

Планировщик, который знает зависимости между задачами, повторяет упавшие и не даёт запускать одно и то же дважды.

Spark80%

Spark · Инженерия данных

Распределённая обработка больших объёмов данных: тот случай, когда данные не помещаются на одну машину.

Kafka80%

Kafka · Инженерия данных

Распределённый журнал событий: основа потоковой архитектуры и источник данных для онлайн-признаков.

ML Pipelines80%

ML-пайплайны · MLOps

Оформление обучения как воспроизводимой последовательности шагов вместо разрозненных ноутбуков.

Data Versioning80%

Версионирование данных · MLOps

Данные меняются чаще кода — без их версий эксперимент не воспроизвести.