Лекция 10. Нормализация данных

Скачать

Лекция 10. Нормализация данных

 

Содержание лекционного занятия:

·         Избыточность данных

·         Аномалии обновления

·         Аномалии удаления

·         Аномалии ввода

 

Нормализация представляет собой процесс реорганизации данных путем ликвидации повторяющихся групп и иных противоречий с целью приведения таблиц к виду, по­зволяющему осуществлять непротиворечивое и корректное редактирование данных.

Окончательная цель нормализации сводится к получению такого проекта базы данных, в котором каждый факт появляется лишь в одном месте, то есть, исключе­на избыточность информации. Таким образом, нормализацию можно также опре­делить как процесс, направленный на уменьшение избыточности информации в реляционной базе данных.

Цели нормализации

Избыточность информации устраняется не столько с целью экономии памяти, сколько для исключения возможной противоречивости хранимых данных и упро­щения управления ими.

Использование ненормализованных таблиц может привести к нарушению целостно­сти данных (противоречивости информации) в базе данных. Обычно различают сле­дующие проблемы, возникающие при использовании ненормализованных таблиц:

·         избыточность данных;

·         аномалии обновления;

·         аномалии удаления; 

·         аномалии ввода.

Чтобы проиллюстрировать проблемы, возникающие при работе с ненормализо­ванными базами данных, рассмотрим в качестве примера таблицу СОТРУДНИ­КИ, содержащую информацию о сотрудниках некой организации. Структура этой таблицы приведена на рис. 2.

image

Рис. 2. Структура ненормализованной таблицы СОТРУДНИКИ

Избыточность данных

Избыточность данных проявляется в том, что в нескольких записях таблицы базы данных повторяется одна и та же Информация. Например, один человек может работать на двух (или даже более) должностях. Но в таблице, приведенной ни рис. 2, каждой должности соответствует запись, и в этой записи содержится ин­формация о личных данных сотрудника, эту должность занимающего. Таким об­разом, если сотрудник работает на нескольких должностях, то его личные данные будут дублироваться несколько раз, что приведет к неоправданному увеличению занимаемого объема внешней памяти.

Аномалии обновления

Аномалии обновления тесно связаны с избыточностью данных. Предположим, что у сотрудника, работающего на нескольких должностях, изменился адрес. Чтобы информация, содержащаяся в таблице, была корректной, необходимо будет вне­сти изменения в несколько записей. Если же исправление будет внесено не во все записи, то возникнет несоответствие информации, которое и называется аномали­ей обновления.

Аномалии удаления

Аномалии удаления возникают при удалении записей из ненормализованной таб­лицы. Пусть, например, в организации проводится сокращение штатов, и некото­рые должности аннулируются. При этом следует удалить соответствующие запи­си в рассматриваемой таблице. Однако удаление приведет к потере информации о сотруднике, занимавшем эту должность. Такая потеря информации и называется аномалией удаления. (Для нашего случая можно привести и другой пример — уда­ление записи при увольнении сотрудника приведет к потере информации о долж­ности, которую он занимал.)

Аномалии ввода

Аномалии ввода возникают при добавлении в таблицу новых записей и обычно возникают, когда для некоторых полей таблицы заданы ограничения NOT NULL. В таблице, рассматриваемой в качестве примера, имеется поле «Рейтинг», в кото­ром содержится информация об уровне квалификации сотрудника, устанавливае­мом по результатам его работы. При приеме на работу нового сотрудника устано­вить уровень его квалификации невозможно, так он еще не выполнял никаких работ в организации. Если для этого поля задать ограничение NOT NULL, то в таблицу нельзя будет ввести информацию о новом сотруднике. Это и называется аномали­ей ввода.

Выводы. Очевидно, что аномалии обновления, удаления и ввода крайне нежелательны. Что­бы свести к минимуму возможность появления такого рода аномалий, и использу­ется нормализация.

 

Вопросы для самоконтроля:

1.Модели данных. Определение данных и их хранение.

2. Обработка и управление данными.

Рекомендуемая литература:

1. Дейт К.Дж. Введение в системы баз данных. - К.: Диалектика, 1998. - 784 с.

2. Ульман Дж., Уидом Д. Основы систем баз данных. - М.: ЛОРИ, 2000. - 374 с.

 


Скачать


zharar.kz