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

Разработка систем управления базами данных

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

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

Аннотация

Курс состоит из трех частей, в рамках которых будут получены ответы на следующие вопросы: Как хранить данные на диске? Как организовать данные и метаданные, чтобы поддерживать эффективный доступ? Как не испортить данные, если посреди запроса может отключиться питание? Как исполнять запросы при конкурентности, не нарушая физической и логической целостности данных? Каких гарантий может быть достаточно пользователю? Как достигать эффективного исполнения при слабых гарантиях? Какие структуры данных позволяют эффективно выполнять SQL запросы? Как эти структуры данных реализованы? В качестве домашних заданий необходимо будет на C++ реализовывать компоненты СУБД или структуры данных, используемые в СУБД. Курс будет полезен тем, кто заинтересован в системном программировании или просто хочет лучше понимать, как же устроены системы хранения данных.
Цель освоения дисциплины

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

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

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

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

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

  • Предназначение СУБД; Реляционная модель, язык SQL
  • Построчное хранение данных; Буферный пул
  • B-дерево; Log Structured Merge Tree
  • Колоночное хранение данных. Индексы. Фильтры
  • Журнал предзаписи; Восстановление СУБД
  • Concurrency Control 1; Concurrency Control 2
  • Concurrency Control 3; Concurrency Control 4
  • Многопоточное B-дерево; Типы данных и функции
  • Хеш-таблицы в СУБД; Сортировки в СУБД
  • Алгоритмы Join; Исполнение запросов
  • Оптимизатор запросов, rule-based подход; Оптимизатор запросов, cost-based подход
  • Парсинг SQL запросов; Параллельное исполнение запросов
  • Модульность СУБД; Расширяемость PostgreSQL
  • Реальные системы 1; Реальные системы 2
Элементы контроля

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

  • неблокирующий Домашнее задание
  • неблокирующий Экзамен
Промежуточная аттестация

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

  • 2025/2026 2nd module
    Итог = Округление(0.75 * ДЗ + 0.25 * Экз + min(1, Бонус)), где ДЗ — оценка за домашние задания, Экз — оценка за экзамен, Бонус — бонусные баллы. По согласованию с преподавателем возможно получить бонусные баллы за вклад в проекты с открытым исходным кодом, связанные с системами хранения данных Каждая задача из ДЗ имеет некоторый вес. Оценка за ДЗ = 10 * суммарный вес решенных задач / общий вес задач. Округляется только итоговая оценка, округление арифметическое.
Список литературы

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

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

  • 24314 - PostgreSQL изнутри - Е.Рогов - ДМК Пресс - 2022 - https://hse.alpinadigital.ru/document/24314 - Alpina
  • 9781492040309 - Alex Petrov - Database Internals : A Deep Dive Into How Distributed Data Systems Work - 2019 - O'Reilly Media - http://search.ebscohost.com/login.aspx?direct=true&db=nlebk&AN=2250514 - nlebk - 2250514

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

  • Petrov, A., & O’Reilly for Higher Education (Firm). (2019). Database Internals : A Deep Dive Into How Distributed Data Systems Work (Vol. First edition). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=2250514

Авторы

  • Солдатова Татьяна Владимировна