Базы данных. Вводный курс

         

Минимальные функциональные зависимости

Минимальные функциональные зависимости и вторая нормальная форма

Аномалии обновления, возникающие из-за наличия неминимальных функциональных зависимостей
Возможная декомпозиция
Вторая нормальная форма
Нетранзитивные функциональные зависимости и третья нормальная форма
Аномалии обновлений, возникающие из-за наличия транзитивных функциональных зависимостей
Третья нормальная форма
Независимые проекции отношений. Теорема Риссанена
Перекрывающиеся возможные ключи и нормальная форма Бойса-Кодда

Аномалии обновлений, связанные с наличием перекрывающихся возможных ключей
Нормальная форма Бойса-Кодда
Всегда ли следует стремиться к BCNF?
Многозначные зависимости и четвертая нормальная форма


Аномалии обновлений при наличии многозначных зависимостей и возможная декомпозиция
Многозначные зависимости. Теорема Фейджина. Четвертая нормальная форма

Зависимости проекции/соединения и пятая нормальная форма
N-декомпозируемые отношения
Зависимость проекции/соединения
Аномалии, вызываемые наличием зависимости проекции/соединения
Устранение аномалий обновления в 3-декомпозиции
Пятая нормальная форма

Ограниченность реляционной модели при проектировании баз данных
Семантические модели данных
Семантическая модель Entity-Relationship (Сущность-Связь)
Основные понятия ER-модели

Уникальные идентификаторы типов сущности
Нормальные формы ER-диаграмм
Первая нормальная форма ER-диаграммы
Вторая нормальная форма ER-диаграммы
Третья нормальная форма ER-диаграммы
Более сложные элементы ER-модели
Наследование типов сущности и типов связи

Взаимно исключающие связи
Получение реляционной схемы из ER-диаграммы
Базовые приемы
Представление в реляционной схеме супертипов и подтипов сущности
Представление в реляционной схеме взаимно исключающих связей

Основные понятия диаграмм классов UML
Классы, атрибуты, операции
Категории связей. Связь-зависимость
Связи-обобщения и механизм наследования классов в UML
Связи-ассоциации: роли, кратность, агрегация

Ограничения целостности и язык OCL
Общая характеристика языка OCL
Инвариант класса
Операции над значениями предопределенных типов данных
Операции над объектами
Операции над множествами, мультимножествами и последовательностями
Операция select
Операция collect
Операции exists, forAll, size

Операции union, intersect, symmetricDifference
Примеры инвариантов
Плюсы и минусы использования языка OCL при проектировании реляционных баз данных
Получение схемы реляционной базы данных из диаграммы классов UML
Основные понятия, цели и общая организация System R

Используемая терминология
Цели System R и их связь с общей организацией системы
Организация внешней памяти в базах данных System R
Страницы данных и идентификаторы кортежей

Индексы и кластеризация таблиц
Интерфейс RSS
Операции сканирования таблиц и списков
Операции создания и уничтожения постоянных и временных объектов базы данных

Операции модификации таблиц и списков
Операция добавления поля к существующей таблице
Операции управления прохождением транзакций
Операция явной синхронизации
Общие принципы организации данных во внешней памяти в SQL-ориентированных СУБД
Хранение таблиц
Индексы

B+-деревья
Хэширование
Журнальная информация
Служебная информация
Общее понятие транзакции и основные характеристики транзакций

Атомарность транзакций
Транзакции и целостность баз данных
Изолированность транзакций
Отсутствие потерянных изменений (первый уровень изолированности)
Отсутствие чтения грязных данных (второй уровень изолированности)
Отсутствие неповторяющихся чтений (третий уровень изоляции)
Проблема фантомов
Сериализация транзакций

Методы сериализации транзакций
Синхронизационные блокировки
Гранулированные синхронизационные блокировки
Предикатные синхронизационные блокировки

Синхронизационные тупики, их распознавание и разрушение
Обнаружение тупиковых ситуаций
Разрушение тупиков
Метод временных меток
Методы сериализации транзакций на основе поддержки версий объектов базы данных
перейти
перейти
Содержание раздела