Оптимизация баз данных
Курс по выбору
I. Организационно-методический раздел
Дисциплина изучается студентами направления «Информационные технологии» (магистратура) в 12 семестре, итоговой формой контроля является экзамен. Контроль самостоятельной работы студентов осуществляется в виде тестирования, опросов и проверки домашней работы.
Цель и задачи изучения дисциплины
Цель дисциплины «Оптимизация баз данных» - формирование у обучающихся устойчивого понимания основных принципов разработки программного обеспечения связанного с хранением и манипуляциями данными. Задачами курса являются развитие теоретических знаний, навыков и подходов к оптимизации баз данных.
Место дисциплины в профессиональной подготовке выпускника
Является специальной дисциплиной магистра и развивает тематику дисциплин, посвященных технологиям баз данных. Для изучения необходимы знания в области общей теории баз данных.
Требования к уровню освоения материала дисциплины
После изучения курса студенты должны:- усвоить основные принципы организации баз данных,
- узнать о способах проведения оптимизации баз данных,
- иметь представление о математическом основании различных способов оптимизации,
- уметь применять полученные знания в оптимизации баз данных.
Содержание дисциплины
- 1. Введение.
- Роль и место баз данных в современных приложениях, функциональные возможности и использование различных СУБД для решения прикладных задач. Системы реляционных баз данных, системы клиент-сервер, интеграция информации. Краткий обзор структуры СУБД, механизмы транзакций и обработки запросов. Значимость вопросов эффективности и оптимизации баз данных.
- 2. Планирование и проектирование баз данных
- Жизненный цикл баз данных. Определение типа сущностей, формализация связей между сущностями, использование механизмов атрибутов. Модель ER. Представление ключей в ER модели. Структурные ограничения, множества связей. Различные типы дефектов ER модели.
- 3. Реляционная модель и реляционная алгебра
- Структура реляционных данных, математические отношения и их свойства. Реляционная целостность, представления. Операции реляционной алгебры, реляционное исчисление кортежей и доменов. Реляционная алгебра как язык описания ограничений.
- 4. Нормализация
- Цели нормализации. Избыточность данных и аномалии обновления. Функциональные зависимости и правила вывода функциональных зависимостей. Первая, вторая и третья нормальные формы. Нормальная форма Бойса-Кодда. Четвертая и пятая нормальные формы.
- 5. Управление транзакциями
- Значимость вопросов управления транзакциями. Управление параллельным доступом. Методы упорядочивания. Необходимость восстановления и методы восстановления. Обнаружение взаимоблокировок. Резервное копирование и восстановление.
- 6. Обработка запросов
- Общие методы обработки запросов, декомпозиция запросов. Оценка стоимости операций реляционной алгебры. Вопросы использования курсоров. Обработка запросов в распределенных системах. Потоковая обработка запросов. Многозначные зависимости.