Данные меняются чаще кода — без их версий эксперимент не воспроизвести.
Ключевые тезисы
- DVC, LakeFS, Delta Lake хранят версии больших датасетов.
- Git хранит указатели, объектное хранилище — сами данные.
- Версия данных должна фиксироваться вместе с моделью.
Подробный разбор
2 подтем — раскройте любую, чтобы увидеть объяснение, формулы, примеры и интерактивные графики.
1Как версионируют данные
Git хранит указатели, объектное хранилище — сами файлы.
dvc add data/train.parquet # создаёт data/train.parquet.dvc с хешем
git add data/train.parquet.dvc .gitignore
git commit -m "dataset v3"
dvc push # файл уезжает в S3
# на другой машине
git checkout experiment-42 && dvc pull- DVC — файловый подход, хорошо ложится на git-процесс.
- Delta Lake / Iceberg — версионирование таблиц с time travel прямо в SQL.
- LakeFS — «git для объектного хранилища» с ветками и коммитами.
2Корректность на момент времени
Почему снапшот «как сегодня» портит обучение.
Многие таблицы перезаписываются: адрес клиента, его сегмент, статус договора. Если брать их текущее значение для исторических событий, вы обучаетесь на информации из будущего — это утечка на уровне хранилища.
Решения: медленно меняющиеся измерения (SCD Type 2) с полями valid_from/valid_to, либо time travel в Delta/Iceberg, либо снапшоты на каждую дату.
Связанные темы
Платформа данных · Воспроизводимость
ML Pipelines95%
ML-пайплайны · MLOpsОформление обучения как воспроизводимой последовательности шагов вместо разрозненных ноутбуков.
Warehouse, Lake, Lakehouse80%
Хранилище, озеро, lakehouse · Инженерия данныхТри способа хранить аналитические данные: строгая схема, сырые файлы или гибрид с транзакциями поверх объектного хранилища.
File Formats80%
Форматы хранения · Инженерия данныхКолоночные форматы против строковых: почему Parquet почти всегда лучше CSV для аналитики.
Partitioning80%
Партиционирование · Инженерия данныхРазделение данных по ключу (обычно по дате), чтобы запрос читал минимум файлов.
Analytical SQL80%
Аналитический SQL · Инженерия данныхОконные функции, агрегации и CTE — основной инструмент подготовки признаков на больших данных.
ETL vs ELT80%
ETL и ELT · Инженерия данныхПреобразовывать данные до загрузки или уже внутри хранилища — и почему индустрия сместилась ко второму.
Batch and Streaming80%
Батч и стриминг · Инженерия данныхОбработка по расписанию против непрерывной обработки событий. Разные задержки, разные гарантии, разная стоимость.
Orchestration80%
Оркестрация пайплайнов · Инженерия данныхПланировщик, который знает зависимости между задачами, повторяет упавшие и не даёт запускать одно и то же дважды.
Spark80%
Spark · Инженерия данныхРаспределённая обработка больших объёмов данных: тот случай, когда данные не помещаются на одну машину.
Kafka80%
Kafka · Инженерия данныхРаспределённый журнал событий: основа потоковой архитектуры и источник данных для онлайн-признаков.
Experiment Tracking75%
Трекинг экспериментов · MLOpsФиксация параметров, метрик, артефактов и версии кода для каждого запуска.
MLflow75%
MLflow · MLOpsОткрытая платформа для трекинга, упаковки и регистрации моделей.
Model Versioning75%
Версионирование моделей · MLOpsКаждая обученная модель — артефакт с версией, метриками и происхождением.
Ablation studies75%
Абляционные исследования · Оценка моделейПоочерёдное отключение компонентов, чтобы понять, что именно даёт прирост качества.