
уд-3-2.ppt
- Количество слайдов: 22
2. 6. 1 Нормализация таблиц С содержательной точки зрения нормализация таблиц -доработка концептуальной схемы базы данных. С формальной точки зрения нормализация - процесс последовательного разбиения и преобразования некоторого исходного набора таблиц для получения набора взаимосвязанных таблиц в нормальных формах. 2. 6. 2 Первая нормальная форма Суть первой нормальной формы – атомарность (неделимость) полей и единственность значений по полям в реляционной модели данных.
Лич Фамили Звание н. № я Мероприятия, в кот. участвовал сотруд. Наименование 001 Пронин Майор 002 Лич н. № Премия Операция Отпуск «Бриллиантовая рука» Полковни Операция «Берн» к Капитан Операция «Золотой Ягуар глаз» Операция «Багамы» Феррари Исаев 007 Награда Операция «Ы» Бонд Кабин. Сл. тел. 110 Награда Фамилия Премия Пронин Майор 110 11 -22 -33 001 Операция «Бриллиантовая рука» Отпуск Пронин Майор 110 11 -22 -33 002 Операция «Берн» - Исаев Полковник 110 11 -22 -33 007 Операция «Золотой глаз» Операция «Багамы» Ягуар Бонд Капитан С-110 33 -22 -11 Феррари Бонд Капитан С-110 33 -22 -11 007 11 -2233 С-110 33 -2211 Наименование мероприятия, в котором участвовал сотрудник Операция «Ы» 001 Звание 110 Кабин. Сл. тел
2. 6. 3 Вторая нормальная форма Использует понятии полной функциональной зависимости Отношение находится во второй нормальной форме, если оно находится в 1 НФ и каждый неключевой атрибут функционально полно зависит от ключа (ключей). Для перевода таблицы из 1 НФ в 2 НФ надо: - образовать проекцию исходной таблицы на составной ключ и на поля, находящиеся в полной функциональной зависимости от составного ключа; - построить еще одну или несколько проекций на часть составного ключа с полями функционально зависящими от этой части ключа.
Лич н. № Наименование мероприятия Награда Фамилия 001 Операция «Ы» Операция «Бриллиантовая рука» Премия Отпуск Пронин Майор 002 Операция «Берн» - 007 Операция «Золотой глаз» Операция «Багамы» Ягуар 007 Лич № Наименование мероприятия 001 Операция Ы 001 Операция “Бриллиантовая рука” 002 Операция Берн 007 Операция “Золотой глаз” 007 Операция “Багамы” Звание Кабин. Сл. тел. 110 11 -22 -33 Исаев Полковник 110 11 -22 -33 Бонд Капитан С-110 33 -22 -11 Феррари Бонд Капитан С-110 33 -22 -11 Награды Оклад Отпуск Ягуар Феррари Лич Фами№ лия Звание Каби нет Сл. тел. 001 Пронин Майор 110 11 -22 -33 002 Исаев Полковник 110 11 -22 -33 007 Бонд Капитан С-110 33 -22 -11
2. 6. 4 Третья нормальная форма Цепочка функциональной зависимости : Лич№ Кабинет Сл. телефон. Имеется транзитивная зависимость поля «Сл. телефон» от поля «Лич№» Отношение находится в 3 НФ, если оно находится в 2 НФ и в нем отсутствуют транзитивные зависимости неключевых атрибутов от ключа. Для преобразования из 2 НФ в 3 НФ Ø таблицу разделяют на 2 или более проекций так, чтобы конечные поля в цепочках транзитивной зависимости вынести в отдельные таблицы, Ø таблицы связывают внешними ключами по полям, находящимся внутри цепочек транзитивной зависимости.
Лич№ Кабинет Сл. телефон Лич № Фамилия Звание Кабинет Сл. телефон 001 Пронин Майор 110 11 -22 -33 002 Исаев Полковн 110 11 -22 -33 Капитан С-110 33 -22 -11 ик 007 Бонд Лич № Фамилия Звание Кабинет Сл. телефон 001 Пронин Майор 110 11 -22 -33 002 Исаев Полков 110 ник С-110 33 -22 -11 007 Бонд Капитан С-110
2. 6. 5 Нормальная форма Бойса-Кодда Таблица находится в форме 3 НФ, но имеется полная функциональная зависимость некоторых ее атрибутов от совокупности других атрибутов (детерминантов). В данной таблице имеется 2 детерминанта - (Лич№, Операция) и - (Фамилия, Операция), От каждого из них функционально полно зависит поле Мероприятие. Таблица находится в НФ Бойса-Кодда тогда и только тогда, когда каждый ее детерминант является возможным ключом. Лич № Фамилия Операция Мероприятие 001 Пронин Ы Прыжок 002 Исаев Берн Бросок 007 Бонд Бранденбург Прыжок 007 Бонд Золотой глаз Бросок
Для приведения таблицы в нормальную форму Бойса-Кодда надо разбить таблицу так, чтобы исключить пересечения по некоторым полям имеющихся детерминантов Лич № 001 002 007 Фамилия Пронин Исаев Бонд Операция Ы Берн Бранденбург Золотой глаз Мероприятие Прыжок Бросок Лич № Фамилия Лич № Операция Мероприятие 001 Пронин 001 Ы Прыжок 002 Исаев 002 Берн Бросок 007 Бонд 007 Бранденбург Прыжок 007 Золотой глаз Бросок Нормализация исходных таблиц производится с целью устранения аномалий и дублирования данных. Результат нормализации – законченная схема базы данных (логическая структура). Технологическое описание базы данных помещается в каталог базы данных.
3 Внутренняя структура БД. 3. 1 Общая характеристика Физическое размещение данных в ИС ориентировано на внешнюю память. Внутренняя схема базы данных включает три основные компоненты Системная информация по БД (каталог БД) - структура БД - ограничения целостности Информационные массивы данных . . . Прикладная и интерфейсная часть индексов. . . . - запросы. . . . - процедуры страницы - события (физ. записи) . . . - правила - код Единый файл Организация записей в страницах (расположение, добавление, корректировка, удаление) составляет физическую структуру данных, которая образуют третий уровень представления информации в ИС.
3. 2 Физические структуры данных
Физические записи из внешней памяти считываются в оперативную память. Обработка записей осуществляется в оперативной памяти, для чего СУБД образует и поддерживает специальные буферы. После завершения обработки страница с соответствующими записями покидает буфер и фиксируется в дисковом файле. Аналогично осуществляется доступ и к индексным массивам. Физические структуры организации файлов данных делятся на линейные и нелинейные.
3. 2. 1 Линейные структуры данных
В линейных структурах в одну страницу объединяются записи одной таблицы, которые располагаются последовательно друг за другом. При добавлении записей новая запись помещается непосредственно за последней записью. Если страница файла данных заполняется, то для таблицы выделяется дополнительная страница.
Удаление записей в линейных структурах может производиться 2 способами: 1) при удалении происходит автоматическая перезапись всех записей, расположенных за удаляемой, с целью ликвидации пустых мест (требуются затраты времени); 2) удаление записи без перезаписи, но при превышении общего объема пустых мест в странице выше определенного значения (например, 30%) специальный компонент СУБД автоматически производит дефрагментацию страниц, удаляя пустые места.
При корректировке записи значение изменяемого поля может потребовать больше или меньше дискового пространства. 2 разновидности линейных структур Ø файл расширяется или уплотняется с автоматическим перезаписыванием всех записей, лежащих за корректируемой; Ø для каждой записи выделяется одинаковое дисковое пространство, исходя из максимально возможного заполнения по установленным типам полей (формат dbf).
Структура dbf-файла включает Ø заголовок определяет тип файла базы данных, дату последнего изменения, номер последней записи, смещение, с которого начинается информационная часть (записи), размер каждой записи, Ø блок описания структуры состоит из последовательности элементов, которые описывают определенное поле логической структуры (схемы) базы данных (имя поля, тип поля, длина и заканчивается специальным символом для отделения описания одного поля от другого), Ø информационная часть состоит из последовательности групп байтов одинаковой длины без специальных разделителей, Так обеспечивается прямой доступ к любой записи. Положение ее (смещение) однозначно вычисляется по ее номеру и параметрам полей.
3. 2. 2 Нелинейные структуры данных
Физические записи в нелинейных структурах помимо информационных полей включают одно или несколько полей указателей, где размещаются адреса связанных записей. Записи одного информационного объекта располагаются друг за другом, но содержат специальные указатели § на следующую запись объекта (односвязные списки) или § на связанные записи других информационных объектов (многосвязные списки, древовидные структуры). Достоинство - обеспечивается более эффективный доступ к данным, чем в линейных структурах Недостаток - растут затраты при любых операциях добавления, удаления и корректировки записей.
Образование страниц физических записей нелинейных структур рассмотрим на примере записей, связанных отношением «один-ко-многим» . Для записи информационного объекта на стороне «Один» образуется страница файла данных, в которую последовательно помещаются соответствующие записи. При появлении связанных записей для каждой из них образуются подчиненные страницы для размещения соответствующих связанных записей объекта на стороне «Многие» .
Подчиненные записи сами могут иметь подчиненные записи, для которых создаются соответствующие страницы и т. д. Если какая-либо страница переполняется, то для нее образуется связанная страница-продолжение на основе техники односвязного списка. Происходит более эффективная обработка данных, т. к. записи считываются по-странично, а поиск и обработка в буферах оперативной памяти требует меньше времени.
Для формализованного описания нелинейных структур используют теорию графов. В теории графов подобные древовидные структуры называют деревьями (связный, неориентированный граф без циклов). Вершины (узлы) графа по отношению друг к другу могут быть предками или потомками. Предок может иметь несколько потомков, но каждый потомок имеет только одного предка.
Внутренние вершины упорядочены по уровням иерархии. Количество уровней называют высотой дерева. Максимально возможное количество потомков у одного предка называют степенью дерева. Деревья степени больше двух называют сильноветвистыми. Данный матаппарат позволяет разработать операции добавления, исключения, обхода (поиска) записи.
уд-3-2.ppt