• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2026/2027

Data Engineering 0: основы баз данных и SQL

Когда читается: 2-й курс, 2 модуль
Охват аудитории: для своего кампуса
Язык: русский
Кредиты: 4
Контактные часы: 28

Программа дисциплины

Аннотация

Курс посвящен изучению принципов работы с базами данных и языка структурированных запросов SQL. В первой части курса студенты познакомятся с реляционной моделью данных, принципами проектирования и нормализации баз данных, научатся создавать и изменять структуру баз данных, а также писать сложные SQL-запросы. Отдельное внимание уделяется внутренним механизмам работы СУБД PostgreSQL, транзакциям и уровням изоляции, индексам, планированию и оптимизации выполнения запросов. Во второй части курса студенты познакомятся с основными подходами к организации распределенных систем хранения данных, репликацией и шардированием, а также получат практический опыт работы с различными типами СУБД: документо-ориентированными, типа «ключ-значение» и колоночными аналитическими базами данных. По окончании курса студенты смогут проектировать модели данных, писать и оптимизировать SQL-запросы, понимать основные принципы работы современных СУБД и выбирать подходящий способ хранения данных в зависимости от решаемой задачи.
Цель освоения дисциплины

Цель освоения дисциплины

  • Понять основные принципы организации и хранения данных в СУБД
  • Научиться проектировать реляционные модели данных и применять принципы нормализации
  • Приобрести практические навыки создания, получения и изменения данных с использованием SQL
  • Понять принципы работы транзакций, уровней изоляции и механизмов обеспечения целостности и согласованности данных
  • Научиться анализировать планы выполнения и оптимизировать запросы к базам данных
  • Понять назначение и принципы работы индексов в PostgreSQL
  • Познакомиться с принципами репликации, шардирования и распределенного хранения данных
  • Познакомиться с различными моделями хранения данных и понимать границы применимости реляционных, документо-ориентированных, ключ-значение и колоночных СУБД
Планируемые результаты обучения

Планируемые результаты обучения

  • Понимает и применяет основные принципы организации и хранения данных в системах управления базами данных (СУБД)
  • Проектирует реляционные модели данных и применяет принципы нормализации для построения оптимальной структуры базы данных.
  • Создаёт, извлекает, обновляет и удаляет данные с помощью SQL, уверенно выполняя CRUD‑операции на практике
  • Работает с транзакциями: определяет подходящие уровни изоляции, обеспечивает целостность и согласованность данных в различных сценариях
  • Анализирует планы выполнения запросов и применяет методы оптимизации SQL‑запросов для повышения производительности
  • Оценивает необходимость использования индексов в PostgreSQL и грамотно настраивает их для ускорения работы с данными
  • Объясняет принципы репликации, шардирования и распределённого хранения данных, подбирает подходящие стратегии масштабирования под конкретные задачи
  • Различает особенности реляционных, документо‑ориентированных, «ключ‑значение» и колоночных СУБД, обоснованно выбирает модель хранения данных исходя из требований проекта
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Введение. Реляционные БД, таблицы, ключи, нормальные формы
  • SQL: DDL, DML, DTL. Агрегационные и оконные функции, подзапросы
  • Транзакции. ACID, конкурентный доступ, уровни изоляции, аномалии чтения/записи
  • Как работает PostgreSQL, индексы, оптимизация запросов
  • Введение в NoSQL. Репликация и шардирование
  • MongoDB и Redis. Документо-ориентированные БД и модель данных ключ-значение
  • ClickHouse. Колоночно-ориентированные аналитические БД
Элементы контроля

Элементы контроля

  • неблокирующий Домашнее задание
    Домашнее задание выдаётся после каждого семинара с целью закрепления полученных знаний на практике. Домашние задания могут содержать проектирование схемы модели данных, написание и оптимизацию SQL-запросов, а также практические задания по работе с различными СУБД.
  • неблокирующий Активность на семинаре
    Баллы за активность выставляются студентам, активно участвующим в обсуждении материала и решении практических задач на семинарах
Промежуточная аттестация

Промежуточная аттестация

  • 2026/2027 2nd module
    Итог = Мин(10; Округление((ДЗ1 + ДЗ2 + ДЗ3 + ДЗ4 + ДЗ5 + ДЗ6 + ДЗ7) / 7 + 0.2 * СемАктивность))
Список литературы

Список литературы

Рекомендуемая основная литература

  • Juba, S., & Volkov, A. (2019). Learning PostgreSQL 11 : A Beginner’s Guide to Building High-performance PostgreSQL Database Solutions, 3rd Edition (Vol. Third edition). Birmingham, UK: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=2023612
  • Kleppmann, M. (2017). Designing Data-Intensive Applications : The Big Ideas Behind Reliable, Scalable, and Maintainable Systems. Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1487643

Рекомендуемая дополнительная литература

  • Beaulieu, A. (2009). Learning SQL : Master SQL Fundamentals: Vol. 2nd ed. O’Reilly Media.

Авторы

  • Солдатова Татьяна Владимировна
  • Шовкович Елена Геннадьевна