- •Базы данных
- •Лекция 1 Хранение данных Данные, информация
- •Системы хранения данных на основе файлов
- •База данных
- •Требования к субд
- •Администратор бд (абд)
- •Лекция 2 Модели данных Независимость данных
- •Модель, схема
- •Лекция 3 Ранние модели Иерархическая модель
- •Сетевая модель
- •Лекция 4 Пример базы данных, построенной на сетевой модели Постановка задачи
- •Диаграмма
- •Описание на яод
- •Лекция 5 Реляционная модель Принципы
- •Уточнения
- •Лекция 6 Методы хранения данных и доступа к ним
- •Последовательный метод
- •Прямой метод
- •Индексные методы
- •Индексно-последовательный метод
- •Индексно-произвольный метод
- •Инвертированные списки
- •Хеширование
- •Лекция 7 Реляционная алгебра: определения, изменение отношений
- •Изменение отношений во времени.
- •Лекция 8 Операции реляционной алгебры
- •Булевы операции
- •Выбор; свойства выбора
- •Проекция; свойства проекции
- •Лекция 9 Операции реляционной алгебры (продолжение) Соединение
- •Свойства соединения
- •Лекция 10 Операции реляционной алгебры (продолжение)
- •Деление
- •Постоянные отношения. Переименование атрибутов
- •Эквисоединение, естественное и -соединение
- •Реляционная алгебра. Полнота ограниченного множества операторов
- •Операторы расщепления и фактора
- •Лекция 11 Язык структурных запросов sql
- •Начальные понятия
- •Стандарт ansi
- •Типы данных
- •Интерактивный и встроенный sql
- •Синтаксис
- •Подразделы sql
- •Простейшие действия
- •Функции агрегирования
- •Группировка
- •Возможности форматирования
- •Лекция 12 Язык структурных запросов sql (продолжение) Соединение
- •Вложенные запросы
- •Связанные запросы
- •Предикаты, определенные на подзапросах
- •Объединение
- •Изменение базы данных
- •Лекция 13 Понятие о нормальных формах
- •1 Нормальная форма (1нф)
- •2 Нормальная форма (2нф)
- •3 Нормальная форма (3нф)
- •Нормальная форма Бойса-Кодда (нфбк)
- •4 Нормальная форма (4нф)
- •5 Нормальная форма (5нф) – проекция/соединение
- •Лекция 13 Проектирование данных Процессы проектирования
- •Концептуальное проектирование
- •Логическое проектирование
- •Средства создания модели
- •Лекция 14 Функциональные зависимости
- •Аксиомы вывода
- •Ориентированный ациклический граф вывода
- •Определение реляционной базы данных
- •Представление множества функциональных зависимостей
- •Лекция 15 Покрытия функциональных зависимостей
- •Лемма об эквивалентности фз
- •Неизбыточные покрытия
- •Посторонние атрибуты
- •Канонические покрытия
- •Структура неизбыточных покрытий
- •Оптимальные покрытия
- •3 Нормальная форма
- •Нормализация через декомпозицию и посредством синтеза
- •Нормальная форма Бойса-Кодда
- •Литература
Посторонние атрибуты
Пусть F – неизбыточное множество ФЗ. В этом случае удаление любой ФЗ приводит к множеству, не эквивалентному данному. Но ситуацию иногда можно улучшить за счет уменьшения количества атрибутов в некоторых ФЗ.
Определение. Атрибут AR называется посторонним в XYF, если выполнено хотя бы одно из следующих условий:
1. X = AZ, X Z, (F – {XY}){ZY} F;
2. Y = AW, Y W, (F – {XY}){XW} F.
Иначе говоря, атрибут посторонний в ФЗ относительно некоторого множества ФЗ, если его можно удалить из правой или левой частей этой ФЗ без изменения замыкания получившегося множества ФЗ.
Пример
Пусть F = {ABC, BC, ABD}.
Атрибут C посторонний в правой части ABC.
Атрибут B посторонний в левой части ABD.
Конец примера
Определение. ФЗ XY F называется полной или редуцированной слева (редуцированной справа), если X (если Y) не содержит атрибута A, постороннего в XY. ФЗ называется редуцированной, если она является полной, редуцированной справа и Y . Само множество F называется редуцированным (слева, например), если редуцирована (слева) каждая его ФЗ.
Канонические покрытия
Определение. Неизбыточное множество ФЗ, редуцированное слева, называется каноническим, если каждая его ФЗ имеет вид XA.
Заметим, что каждая ФЗ канонического множества редуцирована и справа тоже, поскольку имеет один атрибут справа и F неизбыточно. Если правый атрибут удалить, то возникает ФЗ вида X, который можно удалить из F, что противоречит неизбыточности. Таким образом, всякое каноническое множество редуцировано.
Пример
Пусть F = {AB, AC, AD, AE, BIJ } – каноническое покрытие для G = {ABCE, ABDE, BIJ }.
Конец примера
Утверждение. Если F – редуцированное покрытие, то его покрытие G, полученное расщеплением ФЗ XA1… Am на XA1,…, XAm, будет каноническим.
Структура неизбыточных покрытий
Как соотносятся два неизбыточных покрытия G и H множества ФЗ F? Будем говорить, что атрибуты X и Y эквивалентны относительно F, если F |= XY и F |= YX. Обозначим эквивалентные атрибуты следующим образом: XY.
Лемма. Пусть G и H – эквивалентные неизбыточные покрытия множества ФЗ F над схемой R, XY G. Тогда в H существует ФЗ VW такая, что XV относительно G.
Перефразировка: для заданных эквивалентных неизбыточных покрытий G и H и каждой левой части X ФЗ из G существует эквивалентная левая часть V в ФЗ из H.
Пример
Пусть F = {ABC, BA, ADE}, G = {AABC, BA, BDE}. F, G – неизбыточны и эквивалентны. Здесь AA, BB, ADBD.
Конец примера
Пусть F – множество ФЗ над схемой R, X R. Пусть EF(X) – множество ФЗ с левой частью, эквивалентной X. Обозначим
EF = { EF(X) | X R, EF(X) ≠ }
Если в F не существует ФЗ с левой частью, эквивалентной X, EF(X) пусто. Множество EF – разбиение F. При заданных эквивалентных неизбыточных F и G EF(X) не пусто тогда и только тогда, когда не пусто EG(X). Следовательно, EF содержит столько же множеств, сколько и EG .
Пример
Пусть F, G – из предыдущего примера. Тогда
EF = {
EF(A) = { ABC, BA}
EF(AD) = { ADE }
}
EG = {
EG(A) = {AABC, BA}
EG(AD) = {BDE}
}
Конец примера
Оптимальные покрытия
Определение. Множество ФЗ F минимально, если оно содержит не больше ФЗ, чем любое эквивалентное множество ФЗ.
Определение. Множество X прямо определяет множество Y относительно множества ФЗ F (обозначается X Y), если для F существует неизбыточное покрытие G, в котором ФЗ XY выводима только из ФЗ из G – EG(X).
Теорема. Пусть F и G – эквивалентные минимальные множества ФЗ, тогда для любого F справедливо равенство |EF (X)| = | FG (X)|.
Определение. Множество F оптимально, если не существует эквивалентного множества с меньшим числом атрибутных символов.
Утверждение. Если F – оптимальное множество ФЗ, то оно редуцировано и минимально.
Кольцевые покрытия и составные ФЗ
Определение. ФЗ вида (X1, X2,…, Xn) Y называется составной (СФЗ). Отношение удовлетворяет этой зависимости, если оно удовлетворяет ФЗ Xi Xj и XiY.
Определение. Множество F называется кольцевым, если не существует различных левых множеств X и Y, таких, что XY в F.
Лекция 16
Возвращение к НФ
2 нормальная форма
Множество Y для ФЗ XY из F+ называется частично (полностью) зависимым от X, если XY не является (является) полной ФЗ, то есть X X (XY) F+ (не X X (XY) F+).
Определение. Схема отношения R находится во второй НФ относительно множества ФЗ F, если для каждого атрибута A значения adom(A) атомарны и каждый атрибут, не содержащийся ни в каком ключе схемы R (он называется непервичным в R), полностью зависит от каждого ключа для R.
Схема БД R имеет вторую НФ относительно F, если каждая схема отношения из R находится во второй НФ относительно F.