Базы данных весна 2026
Содержание
Оценка за курс
Оценка состоит из трёх частей:
- обязательный устный зачет - от -2 до +6 баллов
- практика на семинарах +1 балл
- проект (по желанию) +3 балла
Первичные баллы переводятся в оценку напрямую.
Форма отчетности - дифф. зачет.
Важные ссылки
11 апреля лекция пройдет ОЧНО в Большой Химической аудитории.
Отдельная форма регистрации на курс для студентов, включивших курс в индплан или вышедших из академического отпуска, и вольнослушателей
Форма для перевода в другую группу
Важные правила курса
- Необходимо зарегистрироваться на курс!
- Необходимо посещение и лекций, и семинаров. Лекции носят теоретическую направленность, а семинары - практическую.
- На семинарах разбираются различные практические задания. В конце семинара студентам предлагается самостоятельно выполнить задание по теме семинара. Максимальная оценка за одно занятие - 0.1 балла.
- Если сумма баллов за задания на семинарах превышает 1 балл, в итоговую оценку идёт 1 балл.
- Проект выполняется студентами по желанию.
- Выполнение проекта производится поэтапно, по пунктам. Сдача проектов происходит устно, в заранее отведенное время. На промежуточных сдачах студент получает только допуск на финальную защиту пункта, оценка за проект выставляется на финальной защите. За каждый пункт будет заранее известен максимальный балл. Проверяющий на защите имеет право поставить меньше максимального балла за каждый пункт.
- За несанкционированное использование больших языковых моделей (LLM) или списывание при выполнении проекта студент автоматически отправляется на пересдачу.
Важные дедлайны
- Регистрация на курс закончится 21 февраля 23:59 МСК. Если вы зарегистрируетесь позже, вы не получите репозиторий для сдачи проекта.
Проекты после окончания зачетной недели НЕ ДОСДАЮТСЯ.
Важное о сдаче проекта
- Сдача происходит устно. Проверяющий имеет право не принять задание и отправить студента на доработку.
- Для сдачи каждого пункта будет предусмотрен свой дедлайн. После этого дедлайна досдачи возможны ТОЛЬКО в случае индивидуального продления сроков.
- Если не сдан хотя бы один обязательный пункт, проект полностью не засчитывается.
- При обнаружении в коде признаков несанкционированного использования LLM или списывания студент отправляется на пересдачу.
Переносы дедлайнов
Индивидуальные продления сроков сдачи проекта возможны ТОЛЬКО при наличии у студента Единого допуска (для получения обращаться в вашу Физтех-школу). Допуск необходимо прислать директору курса не позднее 3 дней с момента его получения.
Также возможно индивидуальное продление сроков сдачи сессии. Аналогично обращайтесь в вашу Физтех-школу.
Переводы на курс
Официальная сдача курса возможна ТОЛЬКО при включении курса в ваш индивидуальный план. По данному вопросу обращайтесь в Учебное управление.
Контакты
Якушева Софья Федоровна, к.т.н., директор курса/лектор
Почта yakusheva.sf@phystech.edu, Telegram @stager108
Викентьев Михаил Ильич, старший семинарист
Telegram @maelkaard
Содержание
Темы курса (НЕ в хронологическом порядке обсуждения)
1) Базы данных (БД) и системы управления базами данных (СУБД). Модели БД: иерархическая, сетевая, реляционная и другие.
2) Реляционная модель. Базовые понятия: отношение, атрибут, кортеж, домен. Ключи: потенциальный, первичный, альтернативный, внешний, простой и составной, естественный и суррогатный. Реляционная алгебра. Операции JOIN.
3) Язык SQL. Data Definition Language: создание, изменение, удаление схем таблиц. CREATE, ALTER, DROP, TRUNCATE. Ограничения (constraints).
4) Язык SQL. Data Manipulation Language: SELECT, INSERT, UPDATE, DELETE.
5) SELECT-запрос. Базовый синтаксис: FROM, WHERE, GROUP BY, HAVING, ORDER BY, LIMIT. Агрегирующие функции. Работа с пустыми значениями (NULL). Порядок выполнения запроса.
6) SELECT-запрос. Продвинутый синтаксис: подзапросы, CTE, оконные функции. Рекурсивные запросы.
7) Проектирование базы данных. Концептуальная, логическая и физическая схемы. ER-диаграммы, нотация "воронья лапка". Аномалии в данных, связь с проектированием. Нормальные формы: 1, 2, 3.
8) Вопросы быстродействия. Индексы в БД: hash, b-tree, их применение. Оптимизации запросов. Анализ плана выполнения запроса.
9) Безопасность в базе данных. Ролевая модель пользователей. Разграничение доступов. Обеспечение контроля с помощью представлений. Представления: виды, создание, обновление. Использование материализованных представлений.
10) Транзакции. Transaction Control Language: синтаксис. Уровни изоляции, реализация уровней изоляции в PostgreSQL.
11) Версионирование данных. SCD0-5: определение, применение.
12) Программирование на SQL. Процедуры и функции. Триггеры: определение, механизм работы, применение.
13) NoREL базы данных. Обзор. (Примечание: данный раздел курса будет рассказывать приглашенный лектор в течение ~4 занятий).