- •Оглавление
- •2.Управление данными в оперативной памяти.
- •3.Управление транзакциями.
- •2 Нормализация таблиц в реляционной модели бд
- •3 Реляционная модель организации данных. Ее достоинства и недостатки
- •1 Отсутствие кортежей-дубликатов
- •2 Отсутствие упорядоченности кортежей
- •3 Отсутствие упорядоченности атрибутов
- •4 Атомарность значений атрибутов
- •Язык структурированных запросов sql.
- •Dcd (Data Control Language) – язык управления данными состоит из операторов контроля данных, защиты и управления данными:
- •Технология индексирования данных.
- •Запросы в реляционной субд
- •7. Распределенные информационные системы. Технология файлового сервера.
- •8. Понятие атрибута. Ключи и ключевые атрибуты.
- •9. Технологии и модели «клиент-сервер».
- •10. Проектирование бд фактографических аис.
- •11. Распределенные информационные системы (рис), основные понятия.
- •12. Понятие транзакции. Проблемы обновления таблиц-отношений.
- •13. Документальные информационные системы
- •14. Администрирование базы данных.
- •15. Реляционная модель данных. Понятие первой нормальной формы.
- •16. Реляционная модель данных. Понятие второй нормальной формы.
- •17. Реляционная модель данных. Понятие третьей нормальной формы.
- •18. Распределенные информационные системы. Технология сервера базы данных (dbs).
- •19. Распределенные информационные системы. Технология удаленного доступа к данным (rda).
- •20. Распределенные информационные системы. Технология сервера приложений (as).
- •21. Понятие полноты и точности информационного поиска.
- •22. Понятие релевантности и пертинентности в документальных ипс.
- •23. Способы описания предметной области. Er модели.
2 Нормализация таблиц в реляционной модели бд
Проектирование схемы БД должно решать задачи минимизации дублирования данных и упрощения процедур их обработки и обновления. При неправильно спроектированной схеме БД могут возникнуть аномалии выполнения операций включения, удаления и модификации данных. Эти аномалии обусловлены отсутствием средств явного представления типов множественных связей между объектами ПО и неразвитостью средств описания ограничений целостности на уровне реляционной модели данных.
Аномалии модификации данных
В качестве примера возьмём отношение со следующими атрибутами (ключевые атрибуты выделены подчёркиванием):
ПОСТАВКИ (Номер поставки, Название товара, Цена товара, Количество, Дата поставки, Название поставщика, Адрес поставщика)
Различают три вида аномалий: аномалии обновления, удаления и добавления. Аномалия обновления может возникнуть в том случае, когда информация дублируется. Другие аномалии возникают тогда, когда две и более независимые сущности объединены в одно отношение. Например:
1. Аномалия обновления: в отношении ПОСТАВКИ она может возникнуть, если у какого-либо поставщика изменился адрес. Изменения должны быть внесены во все кортежи, соответствующие поставкам этого поставщика; в противном случае данные будут противоречивы.
2. Аномалия удаления: при удалении записей обо всех поставках одного поставщика все данные о поставщике будут утеряны.
3. Аномалия добавления: в нашем примере она возникнет, если с поставщиком заключен договор, но поставок от него еще не было. Информация о таком поставщике не может быть внесена в отношение ПОСТАВКИ, т.к. для него не определён ключ (номер поставки и название товара) и другие обязательные поля.
Для решения проблемы аномалии модификации данных при проектировании РБД проводится нормализация отношений.
Нормализация отношений
В рамках реляционной модели данных Э.Ф. Коддом был разработан аппарат нормализации отношений и предложен механизм, позволяющий любое отношение преобразовать к третьей нормальной форме. Нормализация схемы отношения выполняется путём декомпозиции схемы.
Нормализация – процесс проверки и реорганизации сущностей и атрибутов с целью удовлетворения требований к реляционной модели данных. ( требования см в вопросе .Реляционная модель организации данных. Ее достоинства и недостатки )
В теории реляционных баз данных обычно выделяется следующая последовательность нормальных форм:
первая нормальная форма (1НФ);
вторая нормальная форма (2 НФ);
третья нормальная форма (3 НФ);
нормальная форма Бойса-Кодда (BCNF);
четвертая нормальная форма (4 НФ);
пятая нормальная форма (5 НФ или PJ/NF).
Основные свойства нормальных форм:
каждая следующая нормальная форма в некотором смысле лучше предыдущей;
при переходе к следующей нормальной форме свойства предыдущих нормальных свойств сохраняются.
Результат нормализации – информация о каждом факте хранится в одном месте.
Процесс нормализации - последовательное приведение структуры данных к нормальным формам.
Нормальная форма – формализованные требования к организации данных.
Нормальные формы основаны на понятии функциональной зависимости атрибутов отношения
Определение 1. Функциональная зависимость
В отношении R атрибут Y функционально зависит от атрибута X (X и Y могут быть составными) в том и только в том случае, если каждому значению X соответствует в точности одно значение Y: R.X ->R.Y.
Определение 2. Полная функциональная зависимость
Функциональная зависимость R.X ->R.Y называется полной, если атрибут Y не зависит функционально от любого точного подмножества X.
Определение 3. Транзитивная функциональная зависимость
Функциональная зависимость R.X -> R.Y называется транзитивной, если существует такой атрибут Z, что имеются функциональные зависимости R.X -> R.Z и R.Z -> R.Y и отсутствует функциональная зависимость R.Z -/-> R.X.
.
Требования 1НФ- все атрибуты сущности содержат атомарные значения и среди атрибутов нет повторяющихся групп.
Атрибуты хобби и телефон содержат несколько значений для каждого экземпляра сущности. В атрибутах Дата начала и завершения проекта и Дата зачисления и увольнения хранятся разные по смыслу два значения. Если хранить только одно значение, то невозможно понять, какая именно дата внесена.
Алгоритм приведения отношения к первой нормальной форме.
разделить сложное отношение;
перенести в нее все «повторяющиеся» атрибуты;
выбрать ключевой атрибут (первичный ключ) для нового отношения;
установить связь от прежнего отношения к новому. Первичный ключ прежнего отношения мигрирует в новое отношение и станет его вторичным ключем.
Требования 2НФ отношение находится в 1НФ и все не ключевые атрибуты полностью зависят от всего ключа. 2НФ имеет место для отношений, имеющих сложный (составной) первичный ключ.
Алгоритм приведения сущности ко второй нормальной форме.
1 выделить атрибуты, которые зависят от части первичного ключа;
2 создать новую сущность;
3 поместить атрибуты, зависящие от части первичного ключа в их собственную новую сущность;
4 установить связь от прежней сущности к новой. Часть первичного ключа прежней сущности мигрирует в новую сущность и станет ее первичным ключем.
2НФ позволяет избежать следующих аномалий при выполнении операций:
- Обновления. Имеет место дублирование данных о сотруднике, если он участвует в нескольких проектах.
- Вставки. Невозможно ввести данные о сотруднике, если он не участвует в проекте.
- Удаления. Если сотрудник прекращает работать над проектом, данные о нем теряются.
Требования 3НФ – Отношение R находится в третьей нормальной форме (3NF) в том и только в том случае, если находится в 2NF, и каждый не ключевой атрибут не является транзитивно зависимым от какого-либо ключа R.
Отношение находится в третьей нормальной форме и никакой не ключевой атрибут не зависит от другого не ключевого атрибута.
Алгоритм приведения отношения к третьей нормальной форме
1 создать новое отношение и перенести в нее атрибуты с одной и той же зависимостью от не ключевого атрибута;
2 использовать атрибут(ы), определяющий эту зависимость, в качестве первичного ключа нового отношения;
3 установить связь от нового отношения к старому.
3НФ позволяет избежать следующих аномалий при выполнении операций:
- Обновления. Имеет место дублирование данных об окладе, если должность занимают несколько сотрудников.
- Вставки. Невозможно ввести данные об окладе, если нет сотрудника, занимающего эту должность.
- Удаления. В случае удаления из таблицы сотрудника, занимающего уникальную должность данные об окладе теряются
Введём понятие многозначной зависимости. Многозначная зависимость существует, если заданным значениям атрибута X соответствует множество, состоящее из нуля (или более) значений атрибута Y (X–»Y). Если в отношении присутствуют многозначные зависимости, то схема отношения должна находиться в 4НФ.
Различают тривиальные и нетривиальные многозначные зависимости. Тривиальной называется такая многозначная зависимость X–»Y, для которой Y Ì X или X U Y = R, где R – рассматриваемое отношение. Тривиальная многозначная зависимость не нарушает 4НФ. Если хотя бы одно из двух этих условий не выполняется (т.е. Y не является подмножеством X или X U Y состоит не из всех атрибутов R), то такая многозначная зависимость называется нетривиальной.
Четвертая нормальная форма (4НФ).
Отношение находится в 4НФ, если оно находится в 3НФ и в нем отсутствуют нетривиальные многозначные зависимости.
