Магистратура
2026/2027




DataOps
ID 1141591
Статус:
Курс обязательный (Инженерия данных)
Где читается:
Факультет компьютерных наук
Когда читается:
2-й курс, 2, 3 модуль
Охват аудитории:
для своего кампуса
Преподаватели:
Масленников Даниил Игоревич
Язык:
русский
Кредиты:
6
Контактные часы:
48
Программа дисциплины
Аннотация
Курс предоставляет студентам комплекс теоретических знаний и методологических основ в области технологий проектирования, автоматизации, развёртывания и эксплуатации систем обработки данных с применением подходов DevOps и DataOps. В рамках дисциплины рассматриваются принципы организации и тестирования проектов обработки данных, контейнеризации приложений, непрерывной интеграции и доставки, управления облачной инфраструктурой и оркестрации контейнеров. Особое внимание уделяется разработке и автоматизации пайплайнов обработки данных, организации хранения и преобразования данных, контролю их качества, мониторингу и обеспечению надёжности DataOps-систем. Практическая часть дисциплины предусматривает применение GitLab, Docker, Terraform, Kubernetes, PostgreSQL, ClickHouse, Apache Airflow, dbt, Prometheus и Grafana для построения и эксплуатации компонентов системы обработки данных.
Цель освоения дисциплины
- Формирование знаний, умений и практических навыков проектирования, автоматизации, развёртывания и эксплуатации DataOps-систем, включая организацию CI/CD-процессов, управление инфраструктурой, разработку пайплайнов обработки данных, контроль качества данных и мониторинг компонентов системы.
Планируемые результаты обучения
- -знать основы MLOps, этапы жизненного цикла ML модели, ключевые проблемы и решения
- -описывать полный жизненный цикл ML модели
- -планировать архитектуры ML проекта
- -понимать требования к инфраструктуре
- -знать принципы организации ML проектов, основы управления зависимостями, Git workflow
- -создавать структуру проекта, настраивать окружение с UV, работать с Git
- -создавать baseline модели, управление зависимостями проекта
- -знать принципы создания ML API, основы pytest, документирование API
- -уметь создавать endpoints для ML модели, писать тесты, валидировать данные
- -разрабатывать ML API, тестирование ML сервисов
- -знать основы облачных технологий, принципы ценообразования
- -выбирать подходящие облачные сервисы, планировать архитектуру
- -работать с облачными платформами, планировать ресурсы
- -знать основы работы с Yandex.Cloud, принципы управления доступом
- -создавать и настраивать облачные ресурсы вручную, работать с веб-интерфейсом Yandex.Cloud
- -знать принципы IaC, различия между Terraform и Ansible, best practices
- -выбирать подходящие инструменты для автоматизации инфраструктуры
- -понимать декларативный и императивный подходы к IaC
- -знать синтаксис Terraform HCL, принципы работы с state
- -писать Terraform конфигурации, планировать изменения
- -навыки автоматизации создания облачной инфраструктуры
- -знать синтаксис Ansible YAML, концепцию playbooks и roles
- -уметь создавать playbooks для настройки окружения, навыки автоматизации конфигурации серверов
- -знать принципы контейнеризации, особенности ML приложений в контейнерах
- -уметь выбирать стратегии контейнеризации для ML проектов
- -навыки планирования архитектуры контейнеризованных ML приложений
- -знать синтаксис Dockerfile, принципы Docker Compose
- -создавать эффективные Docker образы, настраивать локальное окружение
- -навыки контейнеризаци ML приложений, оптимизации образов
- Описывать жизненный цикл систем обработки данных.
- Определять роли участников и основные процессы DataOps-проектов.
- Выявлять задачи, требующие автоматизации при разработке и эксплуатации систем обработки данных.
- Организовывать структуру проекта обработки данных.
- Обеспечивать воспроизводимость окружений выполнения приложений.
- Настраивать автоматизированное тестирование и сборку приложений.
- Организовывать публикацию контейнерных образов и доставку приложений.
- Выбирать облачные ресурсы с учётом требований системы обработки данных.
- Обеспечивать воспроизводимость инфраструктурных конфигураций.
- Объяснять архитектуру и основные принципы работы Kubernetes.
- Использовать конфигурационные файлы и Helm при развёртывании приложений.
- Анализировать процессы развёртывания и состояние компонентов системы.
- Выбирать СУБД с учётом требований к хранению и обработке данных.
- Организовывать хранение данных и выполнять операции с базами данных.
- Объяснять назначение и основные принципы работы Apache Airflow.
- Контролировать выполнение задач и анализировать возникающие ошибки.
- Настраивать расписания, зависимости и параметры выполнения задач.
- Анализировать журналы и метрики работы пайплайнов.
- Организовывать структуру dbt-проекта.
- Подключать источники данных и создавать модели преобразования.
- Выполнять преобразования данных и анализировать результаты их выполнения.
- Использовать Jinja, макросы и инкрементальные модели для преобразования данных.
- Настраивать мониторинг данных и пайплайнов с использованием Prometheus и Grafana.
- Анализировать состояние DataOps-систем, выявлять ошибки и определять способы их устранения.
Содержание учебной дисциплины
- Основы DevOps и DataOps (модуль 6)
- Качество кода и воспроизводимость (модуль 6)
- CI/CD для Data Engineering (модуль 6)
- Облачная инфраструктура и Infrastructure as Code (модуль 6)
- Kubernetes и GitOps (модуль 6)
- Базы данных для DataOps (модуль 7)
- Оркестрация процессов обработки данных (модуль 7)
- Разработка и эксплуатация пайплайнов в Airflow (модуль 7)
- Трансформация данных с использованием dbt (модуль 7)
- Качество данных, мониторинг и эксплуатация DataOps-систем (модуль 7)
Промежуточная аттестация
- 2026/2027 3rd moduleФорма промежуточной аттестации: Экзамен (итоговое тестирование). Формула итоговой оценки и текущего контроля: 0,2 × тест модуля 6 + 0,6 × итоговое домашнее задание модуля 7 + 0,2 × итоговый тест. Максимальная итоговая оценка — 10 баллов.
Список литературы
Рекомендуемая основная литература
- Apache Airflow и конвейеры обработки данных - Харенслак Б., де Руйтер Дж. - Издательство "ДМК Пресс" - 978-5-97060-970-5 - 2022 - русский - https://e.lanbook.com/book/241133 - ЛАНЬ - 241133
- Командная разработка программного обеспечения с помощью системы контроля версий Git: Конспект лекций - Рощин П. Г. - Национальный исследовательский ядерный университет «Московский инженерно-физический институт» - 978-5-7262-2846-4 - 2022 - русский - https://e.lanbook.com/book/355550 - ЛАНЬ - 355550
- Методы машинного обучения - Татарникова Т. М., Боженко В. В. - Санкт-Петербургский государственный университет аэрокосмического приборостроения - 978-5-8088-1885-9 - 2023 - русский - https://e.lanbook.com/book/461489 - ЛАНЬ - 461489
- Основы интеллектуального анализа данных и машинного обучения: Конспект лекций - Запечников С. В. - Национальный исследовательский ядерный университет «Московский инженерно-физический институт» - 978-5-7262-2856-3 - 2022 - русский - https://e.lanbook.com/book/355580 - ЛАНЬ - 355580
Рекомендуемая дополнительная литература
- Docker на практике - Сейерс Э. Х. , Милл А. - Издательство "ДМК Пресс" - 978-5-97060-772-5 - 2020 - русский - https://e.lanbook.com/book/131719 - ЛАНЬ - 131719
- Введение в технологию контейнеров и Kubernetes - Маркелов А. А. - Издательство "ДМК Пресс" - 978-5-97060-775-6 - 2019 - русский - https://e.lanbook.com/book/131702 - ЛАНЬ - 131702