- •Глава 1. Основы теории баз данных Введение в «Базы данных»
- •Вопрос 2 Метод нормальных форм
- •Создание бд. Типовые структуры интерфейса бд
- •Строка меню
- •Окно базы данных
- •Создание пустой базы данных
- •Создание базы данных с помощью мастера
- •Построение простейших реляционных таблиц
- •Создание таблицы в окне конструктора
- •Текстовые поля
- •Поля денежного типа
- •Поля типа Счетчик
- •Поля дат/времени
- •Логические поля
- •Текстовые поля произвольной длины
- •Поля объекта ole
- •Поля гиперссылки
- •Тип данных мастер подстановок
- •Создание структуры таблицы
- •Первичный ключ
Вопрос 2 Метод нормальных форм
Метод основан на фундаментальном в теории реляционных баз данных понятии зависимости между атрибутами отношений.
основные виды зависимостей между атрибутами отношений:
Функциональные;
Транзитивные;
Многозначные.
Функциональная зависимость
Атрибут В функционально зависит от атрибута А, если каждому значению А соответствует в точности одно значение В.
Математически функциональная зависимость В от А обозначается записью А->В. Это означает, что во всех кортежах с одинаковым значением атрибута А атрибут В будет иметь также одно и то же значение. Отметим, что А и В могут быть составными - состоять из двух и более атрибутов.
В отношении (Преподаватель) можно выделить функциональные зависимости между атрибутами ФИО—>Каф, ФИО—>Должн, Должн—>Оклад и другие.
Функциональная взаимозависимость
Если существует функциональная зависимость вида А®В и В®А, то между А и В имеется взаимно однозначное соответствие, или функциональная взаимозависимость. Наличие функциональной взаимозависимости между атрибутами А и В обозначим как А«В или В«А.
Частичная функциональная зависимость
Частичной зависимостью (частичной функциональной зависимостью) называется зависимость неключевого атрибута от части составного ключа.
В рассматриваемом отношении атрибут Должн находится в функциональной зависимости от атрибута ФИО, являющегося частью ключа. Тем самым атрибут Должн находится в частичной зависимости от ключа отношения.
Полная функциональная зависимость
полная функциональная зависимость неключевого атрибута от всего составного ключа. В нашем примере атрибут ВидЗан находится в полной функциональной зависимости от составного ключа.
Атрибут С зависит от атрибута А транзитивно (существует транзитивная зависимость), если для атрибутов А, В, С выполняются условия А®В и В®С, но обратная зависимость отсутствует.
Пример транзитивной зависимостьи:
ФИО->Должн->Оклад
Многозначная зависимость
В отношении R атрибут В многозначно зависит от атрибута А, если каждому значению А соответствует множество значений В, не связанных с другими атрибутами из R.
Многозначные зависимости могут быть «один ко многом» (1:М), «многие к одному» (М:1) или «многие ко многим» (М:М), обозначаемые соответственно: А=>В, А<=В и А<=>В.
Преподаватель ведет несколько предметов, а каждый предмет может вестись несколькими преподавателями, тогда имеет место зависимость ФИО<=>Предмет.
Взаимно независимые атрибуты
Взаимно независимые атрибуты. Два или более атрибута называются взаимно независимыми, если ни один из этих атрибутов не является функционально зависимым от других атрибутов.
В случае двух атрибутов отсутствие зависимости атрибута А от атрибута В можно обозначить так: AØ®B. Случай, когда AØ®B и BØ®A, можно обозначить AØ=B.
Выявление зависимостей между атрибутами
Нормальные формы
Процесс проектирования БД с использованием метода нормальных форм является итерационным и заключается в последовательном переводе отношений из первой нормальной формы в нормальные формы более высокого порядка по определенным правилам. Каждая следующая нормальная форма ограничивает определенный тип функциональных зависимостей, устраняет соответствующие аномалии при выполнении операций над отношениями БД и сохраняет свойства предшествующих нормальных форм.
Выделяют следующую последовательность нормальных форм:
• первая нормальная форма (1НФ);
• вторая нормальная форма (2НФ);
• третья нормальная форма (ЗНФ);
• усиленная третья нормальная форма, или нормальная форма Бойса-Кодда (БКНФ);
• четвертая нормальная форма (4НФ);
• пятая нормальная форма (5НФ).
Первая нормальная форма
Отношение находится в 1НФ, если все его атрибуты являются простыми (имеют единственное значение). Исходное отношение строится таким образом, чтобы оно было в 1 НФ.
Перевод отношения в следующую нормальную форму осуществляется методом «декомпозиции без потерь». Такая декомпозиция должна обеспечить то, что запросы (выборка данных по условию) к исходному отношению и к отношениям, получаемым в результате декомпозиции, дадут одинаковый результат.
Первая нормальная форма
Исходное отношение ПРЕПОДАВАТЕЛЬ, используемое для иллюстрации метода, имеет составной ключ ФИО, Предм. Группа и находится в 1НФ, поскольку все его атрибуты простые.
В этом отношении можно выделить частичную зависимость атрибутов Стаж, Д_Стаж, Каф, Должн, Оклад от ключа - указанные атрибуты находятся в функциональной зависимости от атрибута ФИО. являющегося частью составного ключа.
Эта частичная зависимость от ключа приводит к следующему
1. В отношении присутствует явное и неявное избыточное дублирование данных, например:
• повторение сведений о стаже, должности и окладе преподавателей, проводящих занятия в нескольких группах и/или по разным предметам:
• повторение сведений об окладах для одной и той же должности или о надбавках за одинаковый стаж.
2. Следствием избыточного дублирования данных является проблема их редактирования. Например, изменение должности у преподавателя Иванова И.М. потребует просмотра всех кортежей отношения и внесения изменений в те из них, которые содержат сведения о данном преподавателе.
Вторая нормальная форма
Отношение находится в 2НФ, если оно находится в 1НФ и каждый неключевой атрибут функционально полно зависит от первичного ключа (составного).
Для устранения частичной зависимости и перевода отношения в 2НФ необходимо, используя операцию проекции, разложить его на несколько отношений следующим образом:
• построить проекцию без атрибутов, находящихся в частичной функциональной зависимости от первичного ключа;
• построить проекции на части составного первичного ключа и атрибуты, зависящие от этих частей. В результате получим два отношения R1 и R2 в 2НФ
Вторая нормальная форма
Вторая нормальная форма
Вторая нормальная форма
Исследование отношений R1 и R2 показывает, что переход к 2НФ позволил исключить явную избыточность данных в таблице R2 - повторение строк со сведениями о преподавателях. В R2 по-прежнему имеет место неявное дублирование данных.
Для дальнейшего совершенствования отношения необходимо преобразовать его в ЗНФ.
Третья нормальная форма
Определение 1. Отношение находится в ЗНФ, если оно находится в 2НФ и каждый неключевой атрибут нетранзитивно зависит от первичного ключа.
Определение 2. Отношение находится в ЗНФ в том и только в том случае, если все неключевые атрибуты отношения взаимно независимы и полностью зависят от первичного ключа.
Третья нормальная форма
Если в отношении R1 транзитивные зависимости отсутствуют, то в отношении R2 они есть:
ФИО—>Должн—>Оклад,
ФИО®Оклад®Должн,
ФИО®Стаж®Д_Стаж
Транзитивные зависимости также порождают избыточное дублирование информации в отношении.
Иерархическая модель данных
К достоинства иерархической модели данных относится: эффективное использование ЭВМ, удобства для работы с иерархически упорядоченной информацией.
К недостаткам иерархической модели относится громоздкость для обработки информации с достаточно сложными логическими связями.
На иерархической модели данных основано сравнительно ограниченное количество СУБД, т.к. IMS, PC\Focus, Ока, МИРИС.
Сетевая модель данных
Достоинством сетевой модели данных является возможность эффективной реализации по показателям затрат памяти и оперативности. В сравнении с иерархической моделью сетевая модель предоставляет большие возможности образования произвольных связей.
Недостатком сетевой модели данных является высокая сложность и жесткость схемы БД, построенная на ее основе, а также сложность для понимания и выполнения обработки информации в БД обычным пользователем. Кроме того, в сетевой модели данных ослаблен контроль целостности связей вследствие допустимости установления произвольных связей между записями.
Наиболее известными сетевыми СУБД являются следующие: IDMS, СЕТЬ, КОМПАС.
Реляционная модель данных
Реляционная модель ориентирована на организацию данных в виде двумерных таблиц. Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:
- каждый элемент таблицы — один элемент данных;
- все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип (числовой, символьный и т.д.) и длину;
- каждый столбец имеет уникальное имя;
- одинаковые строки в таблице отсутствуют;
- порядок следования строк и столбцов может быть произвольным.
Вопрос № 3 Реляционная модель данных
Чтобы связать две реляционные таблицы, необходимо ключ первой таблицы ввести в состав ключа второй таблицы (возможно совпадение ключей); в противном случае нужно ввести в структуру первой таблицы внешний ключ — ключ второй таблицы.
Вопрос №4 Постреляционная модель
Постреляционная модель данных представляет собой расширенную реляционную модель, снимающую ограничение неделимости данных, хранящихся в записях таблиц.
Постреляционная модель данных допускает многозначные поля – поля, значение которых состоят из подзначений. Набор значений многозначных полей считается самостоятельной таблицей, встроенной в основную таблицу.
Постреляционная модель
Постреляционная модель
Постреляционная модель
Достоинством постреляционной модели является возможность представления совокупности связанных реляционных таблиц одной постреляционнойй таблицей. Это обеспечивает высокую наглядность представления информации и повышение эффективности ее обработки.
Недостатком постреляционной модели является сложность решения проблемы обеспечения целостности и непротиворечивости хранения данных.
Пример постреляционной модели БД uniVers, Bubba.
Вопрос №5 Многомерная модель
Многомерные системы позволяют оперативно обрабатывать информацию для проведения анализа и принятия решения.
В развитии концепции информационных систем можно выделить следующие два направления:
Системы оперативной (транзакционной) обработки (OLTP);
Системы аналитической обработки (система поддержки принятия решений) (OLAP - OnLine Analytical Processing – оперативная аналитическая обработка).
Многомерная модель
Агрегируемость данных означает рассмотрение информации на различных уровнях ее обобщения. В информационных системах степень детальности представления информации для пользователя зависит от его уровня: аналитик, пользователь-оператор, управляющий, руководитель.
Историчность данных предполагает обеспечения высокого уровня статичности (неизменности) собственно данных и их взаимосвязей, а также обязательности привязки данных ко времени.
Прогнозируемость данных подразумевает задание функции прогнозирования и применение их к различным временным интервалам.
Основные понятия многомерных моделей данных.
Измерение – это множество однотипных данных, образующих одну из граней гиперкубка. Примерами наиболее часто используемых временных измерений является Дни, Месяцы, Кварталы, Годы. В качестве географических измерений широко используются Города, Районы, Регионы, Страны. В многомерной модели данные измерения играют роль индексов, служащих для идентификации конкретных значений в ячейках гиперкуба.
Ячейка (показатель) – это поле, значение которого однозначно определяется фиксированным набором измерений. Тип поля чаще всего определен как цифровой.
МСУБД используются два основных варианта (схемы) организации данных: гиперкубическая и поликубическая.
Поликубическая схема предполагает , что в БД может быть определено несколько гиперкубов с различной размерностью и с различными измерениями в качестве граней.
Примером системы, поддерживающей поликубический вариант БД, является сервер Oracle Express Server.
В случае гиперкубической схемы предполагается , что все показатели определяются одним и тем же набором измерений. Это означает, что при наличии нескольких гиперкубов БД все они имеют одинаковую размерность и совпадающие измерения.
Многомерная модель
Достоинства МСУБД является удобство и эффективность аналитической обработки больших объемов данных.
Недостатком МСУБД является ее громоздкость для простейших задач обычной оперативной обработки данных.
Вопрос №6 Объектно-ориентированная модель
Объектно-ориентированная модель
Достоинства объектно-ориентированной модели данных в сравнении с реляционной БД является возможность отображения информации о сложных взаимосвязях объектов.
Недостатками объектно-ориентированной модели данных является высокая понятийная сложность, неудобство обработки данных и низкая скорость выполнения запросов.
Примеры объектно-ориентированной СУБД POET, Jasmine, Versant, Orion
