ЛК_4Lect_Normaliz_Stud_2014_04_11.pptx
- Количество слайдов: 40
Бази даних та інформаційні системи Нормалізація Лекції 10, 11, 12
План лекции Введение. 1. Цель и варианты применения нормализации в проектировании РБД 2. Проблем, связанные с избыточностью данных 3. Способы оценки применимости или качества спроектированных отношений 4. Концепция функциональной зависимости 5. Использование функциональной зависимости для группирования атрибутов в отношения, 6. Способы проведения процесса нормализации 7. Нормальные формы: 1 НФ, 2 НФ, 3 НФ, НФБК, 4 НФ, 5 НФ 8. Примеры приведения данных к 3 НФ Заключение 2 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Цель лекции: 3 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Введение Классическая нормализация Нормальная форма свойство отношения в реляционной модели данных, характеризующее его с точки зрения избыточности, потенциально приводящей к логически ошибочным результатам выборки или изменения данных. Нормальная форма определяется как совокупность требований, которым должно удовлетворять отношение. Нормализация – процесс преобразования отношений базы данных (БД) к виду, отвечающему нормальным формам. Тип подхода к проектированию БД: ВОСХОДЯЩИЙ Базовая методология: ПОСТРОЕНИЕ ОТНОШЕНИЙ НА ОСНОВЕ АНАЛИЗА ФУКНЦИОНАЛЬНЫХ ЗАВИСИМОСТЕЙ Подход предложен Э. Ф. Коддом в 1972 г. 1 НФ, 2 НФ, 3 НФ - 1972 г. ; НФБК - 1974 г. ; 4 НФ – 1977 г. ; 5 НФ – 1979 г. 4 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Цель и варианты применения нормализации Варианты применения нормализации к проектированию РМД: Применение как восходящего подхода к проектированию, который начинается с установления связей между атрибутами. Использование для проектирования БД методологии нисходящего проектирования, где проектирование начинается с выявления основных сущностей и связей между ними, а нормализация используется лишь в качестве метода проверки корректности полученного решения. Цель нормализации – найти оптимальную группировку атрибутов для каждого отношения в схеме, что позволяет предотвратить возможное возникновение аномалий обновлений и минимизировать избыточность данных. Замечание! Нормализация предназначена для приведения структуры БД к виду, обеспечивающему минимальную логическую избыточность, и не имеет целью уменьшение или увеличение производительности работы или же уменьшение или увеличение физического объёма базы данных. Конечной целью нормализации является уменьшение потенциальной противоречивости хранимой в базе данных информации, что достигается путем декомпозиции отношений таким образом, чтобы в каждом отношении хранились только первичные факты (то есть факты, не выводимые из других хранимых фактов). 5 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Логическое проектирование Данный этап включает следующие шаги 1. Создание и проверка локальной логической модели данных для отдельных пользователей 1. Исключение особенностей, несовместимых с РМ: 1. Преобразование двухсторонних связей типа M: N 2. Преобразование связей с атрибутами 3. Преобразование сложных связей 4. Преобразование многозначных атрибутов 5. Преобразование рекурсивных связей M: N Дополнительный анализ: 1. Перепроверка связей типа 1: 1 2. Анализ рекурсивных связей 1: 1 3. Удаление избыточных связей 4. Анализ связей супер класс/подкласс 2. Формирование отношений на основе логической модели (раскрытие схемы) 3. Проверка отношений с использованием средств нормализации 4. Проверка применимости отношений для выполнения пользовательский транзакций 5. Определение ограничений целостности 6. Согласование локальной логической модели данных с пользователем 2. Создание и проверка глобальной логической модели данных 6 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Избыточность данных и аномалии обновлений Пример1 БП: 1. 2. 3. Сотрудник занимает только одну должность и работает только в одном отделении. Зарплата сотрудника не зависит от должности, которую он занимает. По одному адресу расположено только одно отделение, отделение расположено только по одному адресу Таблица 1. 1 - Отношение Сотрудник Сотр. ИН 1 2 3 4 5 6 Сотр. ФИО Петров И. И. Сидоров А. А. Вовк М. К Абрамова И. Т. Кисиленко Т. В Зайцева А. В. Таблица 1. 2 – Отношение Отделение Одт. ИН О 3 О 5 О 7 Сотр. Должность Менеджер Ассистент Секретарь Ассистент Менеджер Ассистент Сотр. Зарплата 5000 2000 1500 2300 5500 3000 Отд. ИН О 5 О 3 О 7 О 3 О 5 Отд. Адрес г. Харьков, пр. Ленина, 15, оф. 203 г. Донецк, площ. Восстания, 3 а, оф. 30 г. Киев, ул. Строителей, 43, оф 2 Таблица 2 – Отношение Сотрудник_Отделение Сотр. ИН Сотр. Должность Сотр. Зарплата Отд. ИН Отд. Адрес 1 2 3 4 5 6 7 Сотр. ФИО Петров И. И. Сидоров А. А. Вовк М. К Абрамова И. Т. Кисиленко Т. В Зайцева А. В. Менеджер Ассистент Секретарь Ассистент Менеджер Ассистент 5000 2000 1500 2300 5500 3000 О 5 О 3 О 7 О 3 О 5 г. Донецк, площ. Восстания, 3 а, оф. 30 г. Харьков, пр. Ленина, 15, оф. 203 г. Киев, ул. Строителей, 43, оф 2 г. Харьков, пр. Ленина, 15, оф. 203 г. Донецк, площ. Восстания, 3 а, оф. 30 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Избыточность данных и аномалии обновлений Схема 1 Сотрудник_ Отделение (Сотр. ИН, Сотр. ФИО, Сотр. Должность, Сотр. Зарплата, Отд. ИН, Отд. Адрес) Схема 2 Сотрудник (Сотр. ИН, Сотр. ФИО, Сотр. Должность, Сотр. Зарплата, Отд. ИН) Отделение (Отд. ИН, Отд. Адрес) Сравнение схем: Сотрудник_ Отделение – содержит избыточные данные: сведения о отделениях повторяются для каждого сотрудника Избыточность данных приводит к аномалиям обновления: аномалии вставки, аномалии удаления, аномалии модификации 8 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Избыточность данных и аномалии обновлений Схема 1 Сотрудник_ Отделение (Сотр. ИН, Сотр. ФИО, Сотр. Должность, Сотр. Зарплата, Отд. ИН, Отд. Адрес) Схема 2 Сотрудник (Сотр. ИН, Сотр. ФИО, Сотр. Должность, Сотр. Зарплата, Отд. ИН) Отделение (Отд. ИН, Отд. Адрес) Аномалии вставки Ситуация 1. Необходимо вставить информацию о новом сотруднике Схема 1: При вставке сведений о новом сотруднике в отношение Сотрудник_ Отделение необходимо указать и cведения об отделении компании (Отд. Адрес), в котором эти сотрудники работают. Схема 2: Проблем не возникнет, т. к. для каждого сотрудника необходимо ввести только номер отделения компании. Ситуация 2. Необходимо вставить информацию о новом отделении Схема 1: При вставке сведений о новом отделении, которое еще не имеет собственных сотрудников, потребуется присвоить значение NULL всем атрибутам описания сотрудников, включая Сотр. ИН (нарушение целостности сущности). Схема 2: Проблем не возникнет, т. к. сведения об отделениях вводятся независимо от сотрудников. Аномалии удаления Ситуация. Удаление последнего сотрудника отделения Схема 1: Удалится информация об отделении. Схема 2: Проблем не возникнет, т. к. сведения об отделениях хранятся отдельно от сотрудников Аномалии модификации Ситуация. Изменение атрибутов для некоторого отделения, например, информации об адресе. Схема 1: Необходимо обновить поле Отд. Адрес значения в строках для всех сотрудников отделения. Схема 2: Проблем не возникнет, т. к. сведения об отделениях хранятся отдельно от сотрудников Преимущество схемы 2: нет потенциальных проблем несоответствия данных; уменьшение объема хранимой информации. ХНУРЕ кафедра Інформатики доц. Яковлева О. В. 9
Свойства соединения без потерь и сохранения зависимости Процесс декомпозиции имеет 2 свойства: Соединение без потерь – позволяет восстановить любой кортеж исходного отношения, используя кортежи меньших отношений, полученные в результате декомпозиции. Сохранение зависимости – позволяет сохранить ограничения, наложенные на исходные отношения, посредством наложения некоторых ограничений на каждое из меньших отношений, полученных после декомпозиции. 10 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Функциональные зависимости В основу нормализации положена концепция функциональной зависимости (functional dependency). Функциональной зависимостью (ФЗ) атрибута в от атрибута а в отношении R – называется такая связь между атрибутами, когда каждое значение атрибута а однозначно определяет значение атрибута в (определяет только одно значение атрибута в), причем под атрибутом а может также пониматься и группа атрибутов Обозначение: Атрибут в функционально зависит от атрибута а: а в ФЗ определяется на основе ограничений Пр. О (бизнес-правилами) Детерминант ФЗ - атрибут или группа атрибутов, от которого рассматривается зависимость 11 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Функциональные зависимости Примеры: БП: Сотрудник занимает только одну должность Каждую должность может занимать много сотрудников Сотр. ИН Сотр. Должность (1: 1) ФЗ 2 Ассистент Сотр. ИН – детерминант ФЗ ----------------------------------- Сотр. Должность Сотр. ИН 2 Ассистент 4 6 12 ХНУРЕ кафедра Інформатики доц. Яковлева О. В. (1: М)
Функциональные зависимости Замечание! 1. Пусть а в, тогда если две строки имеют одно и то же значение атрибута а, то они обязательно имеют одно и тоже значения атрибута в. Однако для заданного значения атрибута в может существовать несколько значений атрибута а. 2. Функциональная зависимость является свойством реляционной схемы, а не свойством конкретного экземпляра, т. е. должна выполняться для всех возможных значений, а не для тех, которые хранятся в атрибуте в определенный момент времени. Пример. В любой момент времени: Сотр. ИН Сотр. ФИО (1: 1) ФЗ В определенный момент времени: Сотр. ФИО Сотр. ИН (1: 1), но может измениться на (1: М), следовательно, ФЗ не является. 3. Тривиальные ФЗ, т. е. зависимости, когда в правой части определено подмножество множества, которое указано в левой части (детерминанте), справедливы всегда, но не представляют никакой дополнительной информации о возможных ограничениях. Примеры тривиальных зависимостей: Сотр. ИН, Сотр. ФИО Сотр. ИН 13 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Функциональные зависимости Пример 1 Функциональные зависимости отношения Сотрудник. Отделение БП: 1. 2. 3. Сотрудник занимает только одну должность работает только в одном отделении. Зарплата сотрудника зависит от должности, которую он занимает, и от отделения, в котором он работает. По одному адресу расположено только одно отделение, отделение расположено только по одному адресу Сотр. ИН Сотр. ФИО Сотр. Должность Сотр. Зарплата Отд. ИН Отд. Адрес 1 2 3 4 5 6 Петров И. И. Сидоров А. А. Вовк М. К Абрамова И. Т. Кисиленко Т. В Зайцева А. В. Менеджер Ассистент Секретарь Ассистент Менеджер Ассистент 5000 2000 1500 2300 5500 3000 О 5 О 3 О 7 О 3 О 5 г. Донецк, площ. Восстания, 3 а, оф. 30 г. Харьков, пр. Ленина, 15, оф. 203 г. Киев, ул. Строителей, 43, оф 2 г. Харьков, пр. Ленина, 15, оф. 203 г. Донецк, площ. Восстания, 3 а, оф. 30 Функциональные зависимости: 14 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Функциональные зависимости Выявление первичного ключа отношения с использованием функциональных зависимостей 1. Для выявления потенциальных ключей необходимо найти атрибут (или группу атрибутов), однозначно идентифицирующий каждую строку в этом отношении 2. Если отношение обладает несколькими потенциальными ключами, необходимо выбрать первичный. Все атрибуты, которые не входят в состав первичного ключа, должны быть функционально зависимыми от этого ключа. Пример 1. Отношение Сотрудник_Отделение Единственным потенциальным ключом отношения Сотрудник_Отделение, а следовательно, и его первичным ключом, является атрибут Сотр. ИН 15 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Функциональные зависимости Выводы: В процессе нормализации должны учитываться следующие основные характеристики зависимостей между атрибутами: - справедливость при любых условиях; - 16 связь типа 1: 1; нетривиальность. ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Нормализация – это формальный метод анализа отношений на основе их первичного ключа (или потенциальных ключей, как в случае НФБК) и существующих функциональных зависимостей. Описание. Процесс включает ряд правил, которые используются для поверки отдельных отношений таким образом, чтобы вся база данных могла быть нормализована до желаемой степени нормализации Если некоторое требование не удовлетворяется, то нарушающее данное требование отношение должно быть декомпозировано на отношения, каждое из которых удовлетворяет всем правилам нормализации. Для РМД обязательным является удовлетворение требованиям 1 НФ. Все остальные НФ используются по желанию проектировщиков. Рекомендуется выполнять нормализацию до 3 НФ. Ненормализованная форма (ННФ) – таблица, содержащая одну или несколько повторяющихся групп данных. 17 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Нормализация Ненормализованная форма (ННФ) – таблица, содержащая одну или несколько повторяющихся групп данных. Повторяющейся группой называется группа, состоящая из одного и более атрибутов таблицы, в которой возможно наличие нескольких значений для единственного значения ключевого атрибута ненормализованной таблицы. Пример 2 Сведения об объектах недвижимости, арендованных клиентом Иванов И. И. стр1 Номер объекта Кв 4 Д 5 Агентство Квартал Сведения об аренде объектов недвижимости Номер клиента: К 68 ФИО клиента: Иванов И. И. Адрес объекта Дата начала Дата оконч. Плата Номер аренды владельца г. Харьков ул. Есенина 6, 1. 03. 2005 1. 11. 2005 600 45 кв 7 Харьковская область, 15. 06. 2006 25. 08. 2006 1400 67 пос. Русская Лозовая 14 Дата 25. 11. 07 Наименование владельца Васильченко В. А. Филатов В. К. Рисунок 1. 1 – Исходные данные Таблица 0 - Ненормализованная таблица Клиент_Аренда_Объект_Владел Номер Клиента К 68 ФИО Клиента Иванов И. И. Номер объекта Кв 4 Д 5 К 67 Петров С. С. Д 7 Кв 4 18 Адрес объекта г. Харьков ул. Есенина 6, кв 7 Харьковская область, пос. Русская Лозовая 14 Харьковская область, пос. Циркуны 45 г. Харьков ул. Есенина 6, кв 7 Дата начала аренды 1. 03. 2005 Дата оконч. аренды 1. 11. 2005 Плата 600 Номер владельца 45 Наименование владельца Васильченко В. А. 15. 06. 2006 25. 08. 2006 1400 67 Филатов В. К. 14. 08. 2007 1500 36 Соловьев К. К. 1. 2. 2007 1. 12. 2007 1000 45 Васильченко В. А. ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Ненормализованная форма (ННФ) Пример 2 (продолжение) БП: 1. Клиент может арендовать некоторый объект только 1 раз 2. Клиент не может арендовать одновременно несколько объектов 3. Объект недвижимости принадлежит только одному владельцу 4. Дата окончания аренды может быть изменена 5. Оплата зависит от объекта недвижимости Таблица 0 - Ненормализованная таблица Клиент_Аренда_Объект_Владел Номер Клиента К 68 ФИО Клиента Иванов И. И. Номер объекта Кв 4 Д 5 К 67 Петров С. С. Д 7 Кв 4 19 Адрес объекта г. Харьков ул. Есенина 6, кв 7 Харьковская область, пос. Русская Лозовая 14 Харьковская область, пос. Циркуны 45 г. Харьков ул. Есенина 6, кв 7 Дата начала аренды 1. 03. 2005 Дата оконч. аренды 1. 11. 2005 Плата 600 Номер владельца 45 Наименование владельца Васильченко В. А. 15. 06. 2006 25. 08. 2006 1400 67 Филатов В. К. 14. 08. 2007 1500 36 Соловьев К. К. 1. 2. 2007 1. 12. 2007 1000 45 Васильченко В. А. ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Пример 2 (продолжение) Проектирование на основе построение ER - модели Сам. раб + доска 20 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Первая нормальная форма (1 НФ) Определение: Первая нормальная форма (1 НФ) – отношение, в котором на пересечении каждой строки и каждого столбца содержится только одно атомарное значение. Требование 1 НФ: 1. Отсутствие повторяющихся групп. 2. Наличие первичного ключа. Действия для приведения к 1 НФ: 1. Выбор ключевого атрибута ненормализованной таблицы. 2. Поиск повторяющихся групп. 3. Устранение повторяющихся групп. Для устранения повторяющихся групп существует 2 подхода: а) повторяющиеся группы устраняются путем ввода в пустые строки повторяющихся данных; Анализ: вносится некоторая избыточность данных, которая в результате дальнейшей нормализации будет устранена. б) повторяющиеся группы изымаются и помещаются в отдельное отношение вместе с копиями ключа исходной таблицы. Далее в новых отношениях устанавливаются первичные ключи. При наличии повторяющихся групп нескольких уровней данный прием применяется несколько до тех пор, пока повторяющихся групп не остается. Анализ: - данные обладают меньшей избыточностью - сложности связанные с выделением повторяющихся групп Замечание! При выборе подхода а полученное 1 НФ - отношение декомпозируется в ходе дальнейшей нормализации на те же отношения, которые получаются применения подхода б. 21 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Первая нормальная форма (1 НФ) Пример 2 (продолжение) Таблица 0 - Ненормализованная таблица Клиент_Аренда_Объект_Владел Номер Клиента К 68 ФИО Клиента Иванов И. И. Номер объекта Кв 4 Д 5 К 67 Петров С. С. Д 7 Кв 4 Адрес объекта г. Харьков ул. Есенина 6, кв 7 Харьковская область, пос. Русская Лозовая 14 Харьковская область, пос. Циркуны 45 г. Харьков ул. Есенина 6, кв 7 Дата начала аренды 1. 03. 2005 Дата оконч. аренды 1. 11. 2005 Плата 600 Номер владельца 45 Наименование владельца Васильченко В. А. 15. 06. 2006 25. 08. 2006 1400 67 Филатов В. К. 14. 08. 2007 1500 36 Соловьев К. К. 1. 2. 2007 1. 12. 2007 1000 45 Васильченко В. А. Действия для приведения к 1 НФ (пример): 1. Выбор ключевого атрибута ненормализованной таблицы. ПК: Номер. К 2. Поиск повторяющихся групп. Структура повторяющейся группы: (Номер. О, Адрес. О, Дата. Н, Дата. О, Плата, Номер. В, Назв. В) 22 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Первая нормальная форма (1 НФ) Пример 2 (продолжение) 3. Устранение повторяющихся групп. Подход а: - повторяющиеся группа устраняется с помощью ввода в каждую строку с описанием Объекта недвижимости соответствующих сведений о Клиенте Получаем отношение: Клиент_Аренда_Объект_Владелец(Номер. К, Номер. О, ФИОК, Адрес. О, Дата. Н, Дата. О, Плата, Номер. В, Назв. В Таблица 1 - Отношение Клиент_Аренда_Объект_Владелец (1 НФ) Номер Клиента К 68 ФИО Клиента Иванов И. И. Номер объекта Кв 4 Адрес объекта К 68 Иванов И. И. Д 5 К 67 Петров С. С. Д 7 К 67 Петров С. С. Кв 4 Харьковская область, пос. Русская Лозовая 14 Харьковская область, пос. Циркуны 45 г. Харьков ул. Есенина 6, кв 7 Дата начала Дата оконч. аренды 1. 03. 2005 1. 11. 2005 Плата 600 Номер владельца 45 Наименование владельца Васильченко В. А. 15. 06. 2006 25. 08. 2006 1400 67 Филатов В. К. 14. 08. 2007 1500 36 Соловьев К. К. 1. 2. 2007 1. 12. 2007 1000 45 Васильченко В. А. Потенциальные ключи: Первичный ключ: Вывод: Отношение Клиент_Аренда_Объект_Владелец находится в 1 НФ. Анализ: Отношение подвержено аномалиям обновления 23 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Первая нормальная форма (1 НФ) Пример 2 (продолжение) 3. Устранение повторяющихся групп. Подход б: - повторяющиеся группа устраняется из ненормализованного отношения и помещается в другое отношение вместе с копией исходного ключевого атрибута (Номер. К), затем для нового отношения выбирается собственный первичный ключ Получаем отношения: Клиент (Номер. К, ФИОК) Аренда_Объект_Владелец (Номер. К, Номер. О, Адрес. О, Дата. Н, Дата. О, Плата, Номер. В, Назв. В ) Вывод: Отношения Клиент, Аренда_Объект_Владелец находятся в 1 НФ. Анализ: Отношение Объект_Аренда_Владелец также обладает избыточностью, следовательно, подвержено аномалиям обновлениям Внимание!!! Далее используем результат подхода а 24 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Вторая нормальная форма (2 НФ) 2 НФ – применяется к отношениям с составным ПК Основана на требовании полной функциональной зависимости от ПК Полная функциональная зависимость Полная ФЗ а b – ФЗ, при которой b функционально зависит от полного значения атрибута а и не зависит ни от какого подмножества полного значения атрибута а. Пример полной зависимости ФЗ: Номер. К, Номер. О Дата. Н Пример частичной зависимости ФЗ: Номер. К, Номер. О Плата, т. к. по БП 4: Оплата зависит от объекта недвижимости При частичной зависимости возникают аномалии обновления. Например, при изменении значения Плата для объекта Кв 4 необходимо обновить 2 строки. 25 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Вторая нормальная форма (2 НФ) Определение: 2 НФ – отношение находится в 1 НФ и каждый атрибут, не входящий в состав первичного ключа характеризуется полной функциональной зависимостью от этого первичного ключа Требование 2 НФ: 1. Отношение находится в 1 НФ. 2. Отсутствие ЧФЗ от составного ключа. Действия для приведения к 2 НФ: 1. Выявление ФЗ (полной, частичной). 2. Устранение ЧФЗ. Для устранения ЧФЗ: Частично зависимые атрибуты удаляются из исходного отношения и помещаются в новое отношение вместе с копией их детерминанта, оставшийся детерминант в исходном отношении будет выступать ВК 26 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Вторая нормальная форма (2 НФ) Пример 2 (продолжение) Действия для приведения к 2 НФ (пример): 1. Выписываем ФЗ отношения Клиент_Аренда_Объект_Владелец (полную ФЗ от ПК, частичные, транзитивные? ). ФЗ 0: Номер. К, Номер. О ФИОК, Адрес. О, Дата. Н, Дата. О, Плата, Номер. В, Назв. В - ФЗ от ПК - Полная ФЗ от ПК - Частичная ФЗ от ПК - Транзитивная зависимость 2. Устранение ЧФЗ. 2 НФ 27 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Вторая нормальная форма (2 НФ) Пример 2 (продолжение) Таблица 2. 1 – Отношение Клиент (2 НФ) Номер Клиента К 68 К 67 ФИО Клиента Иванов И. И. Петров С. С. Таблица 2. 2 - Отношение Объект_Владелец (2 НФ) Номер объекта Кв 4 Д 5 Д 7 Кв 4 Адрес объекта Плата 600 1400 Номер владельца 45 67 Наименование владельца Васильченко В. А. Филатов В. К. г. Харьков ул. Есенина 6, кв 7 Харьковская область, пос. Русская Лозовая 14 Харьковская область, пос. Циркуны 45 г. Харьков ул. Есенина 6, кв 7 1500 36 Соловьев К. К. 1000 45 Васильченко В. А. Таблица 2. 3 - Отношение Аренда (2 НФ) Номер Клиента К 68 К 67 28 Номер объекта Кв 4 Д 5 Д 7 Кв 4 Дата начала аренды 1. 03. 2005 15. 06. 2006 14. 08. 2007 1. 2. 2007 ХНУРЕ кафедра Інформатики доц. Яковлева О. В. Дата оконч. аренды 1. 11. 2005 25. 08. 2006 14. 08. 2007 1. 12. 2007
Третья нормальная форма (3 НФ) Транзитивная зависимость: Если для атрибутов а, b, c некоторого отношения существуют зависимости а b, b c, то говорят, что атрибут c транзитивно зависит от атрибута а через атрибут b (при условии, что атрибут а функционально не зависит ни от атрибута b, ни от атрибута с) Наличие транзитивных ФЗ приводит к аномалиям обновления Определение 3 НФ: 3 НФ – отношение находится в 2 НФ и не содержит неключевых атрибутов, которые находились бы в транзитивной ФЗ от этого первичного ключа. Требование 3 НФ: 1. Отношение находится в 2 НФ. 2. Отсутствие ТФЗ от ПК. Действия для приведения к 3 НФ: 1. Выявление ТФЗ. 2. Устранение ТФЗ. Для устранения ЧФЗ: Транзитивно зависимые атрибуты удаляются из исходного отношения и помещаются в новое отношение вместе с копией их детерминанта, оставшийся детерминант в исходном отношении будет выступать ВК 29 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Третья нормальная форма (3 НФ) Пример 2 (продолжение) Действия для приведения к 3 НФ (пример): 1. Выписываем ФЗ отношений Аренда (Номер. К(ВК), Номер. О(ВК), Дата. Н, Дата. О) ФЗ 1: Номер. К, Номер. О Дата. Н, Дата. О; - Полная ФЗ от ПК Клиент (Номер. К, ФИОК) ФЗ 2: Номер. К ФИОК; - Полная ФЗ от ПК Объект_Владелец (Номер. О, Адрес. О, Плата, Номер. В, Назв. В) ФЗ 3: Номер. О Адрес. О, Плата, Номер. В, Назв. В; - Полная ФЗ от ПК ФЗ 4: Номер. В Назв. В; - Транзитивная зависимость 2. Устранение ТФЗ. 30 3 НФ ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Третья нормальная форма (3 НФ) Пример 2 (продолжение) Таблица 2. 1 – Отношение Клиент (3 НФ) Номер Клиента К 68 К 67 ФИО Клиента Иванов И. И. Петров С. С. Таблица 2. 2. 1 - Отношение Объект (3 НФ) Номер объекта Кв 4 Д 5 Д 7 Кв 4 Адрес объекта Плата Номер владельца г. Харьков ул. Есенина 6, кв 7 Харьковская область, пос. Русская Лозовая 14 Харьковская область, пос. Циркуны 45 г. Харьков ул. Есенина 6, кв 7 600 1400 1500 1000 45 67 36 45 Таблица 2. 2. 2 - Отношение Владелец (3 НФ) Номер владельца 45 67 36 45 Наименование владельца Васильченко В. А. Филатов В. К. Соловьев К. К. Васильченко В. А. Таблица 2. 3 - Отношение Аренда (3 НФ) Номер Клиента К 68 К 67 31 Номер объекта Кв 4 Д 5 Д 7 Кв 4 Дата начала аренды 1. 03. 2005 15. 06. 2006 14. 08. 2007 1. 2. 2007 ХНУРЕ кафедра Інформатики доц. Яковлева О. В. Дата оконч. аренды 1. 11. 2005 25. 08. 2006 14. 08. 2007 1. 12. 2007
Третья нормальная форма (3 НФ) Пример 2 (продолжение) Схема декомпозиции отношения Клиент_Аренда_Объект_Владелец (в 1 НФ) на 4 отношения Клиент, Аренда, Объект, Владелец в 3 НФ Клиент_Аренда_Объект_Владелец Клиент Аренда Клиент Аренда (1 НФ) Объект_Владелец (2 НФ) Объект Владелец (3 НФ) Замечания!!! 1) процесс нормализации заключается в декомпозиции исходного отношения посредством последовательного выполнения нескольких операций ПРОЕКЦИИ реляционной алгебры; 2) полученные в результате декомпозиции отношения обеспечивают формирование исходного отношения без потерь, путем использования операции ЕСТЕСТВЕННОГО СОЕДИНЕНИЯ 32 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Пример1. Закрепление материала. «Чемпионат по автогонкам Формула-1» Название команды Название трассы Протяжен ность, км Maclaren-Mercedes Le-Man 5 Кол-во кругов в гонке 56 Место гонщика Ferrari Road. X ……. . 25 ……. . 15 …… 2 3 1 4 1 3 ……. . Дата проведения гонки 10. 05. 2003 1. 08. 2004 ……… Гонщик Страна гонщика Култхард Д. Монтойя Х. П. Ирландия Колумбия Шумахер М. Барикелло Р. ……… Германия Бразилия Рисунок - Дан фрагмент документа «Чемпионат по автогонкам Формула-1» БП: 1. В команде м. б. только несколько Гонщиков, Гонщик может быть только в одной команде 2. Кол_во кругов зависит от гонки 3. В одну дату на трассе проходит только 1 соревнование Название команды Название трассы Протяжен ность, км Кол-во Место кругов гонщика в гонке Дата проведения гонки Гонщик Страна гонщика Maclaren-Mercedes Le-Man 5 56 2 10. 05. 2003 Култхард Д. Ирландия Maclaren-Mercedes Le-Man 5 56 3 10. 05. 2003 Монтойя Х. П. Колумбия Ferrari Le-Man 5 56 1 10. 05. 2003 Шумахер М. Германия Ferrari Le-Man 5 56 4 10. 05. 2003 Барикелло Р. Бразилия Ferrari Road. X 25 15 1 1. 08. 2004 Шумахер М. Германия Ferrari Road. X 25 15 3 1. 08. 2004 Барикелло Р. Бразилия ……. . ……… Шаг 1. Преобразование к 1 НФ: Чемпионат (ИН_Ком, Назв. Ком, ИН_Трасса, Назв_Трасса, Протяж, Кол_во_кругов, Место_Гонщ, Дата_гонки, ИН_Гонщ, ФИО_Гонщ, Страна_Гонщ) Шаг 2!!!. Первичный ключ 1 НФ: 33 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
34 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
35 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Пример2. В-02 ПО «Учебный план на 2011/2012» БП: 1. 2. 3. 4. 5. 6. 7. Учебный план охватывает все группы Преподаватель может ничего не преподавать в 2011/2012 году, каждый преподаватель закреплен за кафедрой Дисциплина может не читаться в 2011/2012 году Каждая группа закрепляется за факультетом, на факультете много групп. На изучение одной и тот же дисциплины разным группам может выделяться разное количество часов. Каждый преподаватель закреплен за кафедрой Нагрузка преподавателя зависит от группы и дисциплины Номер Кол-во студентов Факультет Название Количество Ф. И. О. Кафедра Нагрузка группы ИФ-10 -2 дисциплины часов преподавателя 27 31 ИФ Моделирование систем Имит. моделирование 60 60 25 ПММ Маркетинг 30 28 …. . ПММ ……. Моделирование систем ……. . 80 ……. Петров П. П. Сидоров Г. Л. Алексеев Д. Б. Иванов В. К. Галкин П. П. Петров П. П. ……… ЭК-11 -1 ПМ-10 -1 …… преподавателя АСУ 60 40 20 Маркетинга 10 20 80 АСУ ……. . Доп. ПО «План дипломного проектирования на 2011/2012» БП: 8. Студенты 4, 5 курсов кроме изучения плановых дисциплин занимаются написанием дипломной работы одного из типов: бакалаврская работа, дипломная работа специалиста, работа магистра 9. За каждым студентом 4, 5 курса (бакалавром, специалистом, магистром) закрепляется руководитель (преподаватель), а также тема дипломной работы и назначается предприятие для прохождения преддипломной практики 36 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Пример3. Закрепление материала «Сведения о проектах 1» Название проекта Дата начала выполнения Дата завершения проекта Ф. И. О. исполнителей Должность Оклад Бюджет проекта Название предприятия - заказчика Адрес заказчика Голосовой набор текстов 02. 10. 2003 02. 2004 Иванов В. К. Сидоров Г. Л. Доцент Ассистент 4000 3000 96000 ЧП “Прогресс” пр. Свободы 32 Система распознавания графических образов Система навигации мобильного робота 02. 2003 02. 05. 2004 Петров Л. И. Иванов В. К. Доцент 4000 25000 02. 05. 2003 02. 06. 2004 Яковлев С. А. Ассистент 3000 40000 пер. Светлый ул. 12 Система автоматизации бухгалтерского учета 02. 10. 2003 01. 02. 2004 Сидоров Г. Л. Яковлев С. А. Ассистент 3000 70000 Зав. им. Малышева Зав. им. Ленина ул. Пушкинская, 65 Рисунок –Дан фрагмент документа «Сведения о проектах» БП: 1. На проекте д. работать хотя бы 1 исполнитель 2. Исполнитель участвует в нескольких проектах, но временно может не участвовать в проектах 3. Заказчик может заказывать более 1 проекта, у проекта только 1 заказчик 4. У исполнителя только 1 должность, которая не зависит от проекта 5. Оклад зависит от должности 6. Бюджет проекта назначается заказчиком и не зависит от количества и квалификации исполнителей 37 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Пример4. Закрепление материала «Лечение в санаториях Украины» Название санатория Распол ожение санатория Среднегодовая темпера тура в городе Паспорт -ные данные пациент а Ф. И. О. пациента Адрес пациент а Дата заезда Срок (дн. ) Лечебная процедура Код процедуры Название процедуры Волга Ялта +10 ММ 345676 ММ 874598 Иванов И. И. Иванов С. И. ул. Гагарина 23 02. 09. 2003 4 В-23 21 В-23 Ф-2 Э-22 ММ 768756 Иванова Н. И. 21 ПК 764598 Иванова Е. К. 21 Ф-2 В-23 Ф-1 В-23 Р-34 Петров П. П. Дюльбер Мисхор +9 ММ 5678 45 Сидоров С. С. пр. Победы 12 Ул Ленина, 54 Кол-во сеансов Бассейн 40 4 40 30 15 10 10 7 30 40 45 10 12 8 8 15 15 5 02. 09. 2003 14 Бассейн Массаж Электротер апия Массаж Бассейн Гимнастика Бассейн Кислор. коктейль Электротер апия 04. 09. 2003 14 В-21 Душ Шарко 15 5 Э-22 КК 678998 Продолжительность процедуры (мни) Рисунок –Дан фрагмент документа «Лечение в санаториях Украины» БП: 1. Продолжительность процедуры зависит от только самой процедуры 2. Количество сеансов процедуры зависит от процедуры и клиента, в его конкретный заезд 3. Клиент в одну дату может заезжать только в один санаторий 38 ХНУРЕ кафедра Інформатики доц. Яковлева О. В.
Домашняя самостоятельная работа на тему «Нормализация» Вариант1. Дан фрагмент документа «Книга рецептов» БП: 1. У блюда только может быть только один автор 2. Энергетическая ценность продукта зависит только от самого продукта 3. Код блюда уникален 4. Код продукта уникален 5. Способ приготовления зависит от блюда Код Назва-ние Вид блюда 34 Оливье салат 87 Украинский борщ первое блюдо ………. . …… 39 Код продук та Название продукта О 23 Б 1 О 3 О 8 Б 2 С 4 О 23 О 11 О 12 О 16 Б 2 картофель яйца огурцы горошек мясо майонез картофель капуста свекла томат мясо …… Энергетич еская ценность прод. (на 100 г. ) 100 120 30 55 200 320 100 30 35 50 200 ……. ХНУРЕ кафедра Інформатики доц. Яковлева О. В. Вес (г. ) Способ приго- Код товления автора Ф. И. О. автора рецепта Национально сть автора 100 100 100 200 100 60 200 … Измельчить и перемешать Ф 55 Оливье Л. француз Сварить У 54 Петренко С. М. украинец ………. .
Домашняя самостоятельная работа на тему «Нормализация» Вариант2. Дан фрагмент документа «Сведения о проектах 2» БП: 1. Наше предприятие может выполнять одновременно несколько проектов 2. Сотрудники могут одновременно работать на нескольких проектах 3. Оплата зависит от конкретной работы 4. У проекта может быть только один заказчик, заказчик может заказывать много проектов 5. Номер этапа уникален только в рамках проекта Дата начала этапа Номер проекта Название проекта 02. 10. 2003 02. 2004 098 03. 02. 2004 03. 01. 2005 Разработка ИС для «Банк» 02. 2003 02. 05. 2004 03. 05. 2004 20. 12. 2004 02. 05. 2003 02. 06. 2004 03. 06. 2004 12. 11. 2004 ………. . 40 Дата окончания этапа ………. 540 008 Предприятие – Но заказчик, мер шифр, адрес эта па З 110, 1 ЧП “Прогресс”, 2 пр. Свободы 32 Разработка ИС для «Торговое предприятие » Разработка сайта «Администр ация президента» З 450, Зав. им. Ленина, ул. Пушкинская, 65 З 110, ЧП “Прогресс”, пр. Свободы 32 1 ………. 2 1 2 ХНУРЕ кафедра Інформатики доц. Яковлева О. В. Код исполнителя Ф. И. О. исполнителей Должность Оплата за этап грн. 003 453 004 003 002 004 003 Иванов В. К. Сидоров Г. Л. Петров Л. И. Иванов В. К. Доцент Ассистент 1600 1100 3000 2000 3500 1500 Яковлев С. А. Иванов В. К. Яковлев С. А. Петров Л. И. Иванов В. К. . . Доцент Ассистент Доцент Ассистент Доцент ………. 2000 5000 4000 3000 1500 ……. .
ЛК_4Lect_Normaliz_Stud_2014_04_11.pptx