Название: Базы данных. Концепция баз данных, реляционная модель данных, языки SQL и XML (Токмаков Г. П.)

Жанр: Информационные системы и технологии

Просмотров: 1412


2.4. нормализация данных

 

После определения таблиц, полей, индексов, связей между таблицами и правил ссылочной целостности следует посмотреть на проектируемую базу данных в целом и проанализировать ее с целью устранения логических ошибок. При этом большие отношения, как правило, содержащие большую избыточ- ность, разбиваются на более мелкие логические единицы, группирующие толь- ко данные, объединенные «по природе».

В реляционных базах данных схема содержит как структурную, так и се- мантическую информацию. Структурная информация связана с объявлением отношений, а семантическая выражается множеством известных функциональ- ных зависимостей между атрибутами отношений, объявленных в схеме. Однако некоторые функциональные зависимости могут быть нежелательными из-за побочных эффектов или аномалий, которые они вызывают при модификации баз данных. В связи с этим возникает вопрос о корректности представленной схемы. Корректной считается схема, в которой отсутствуют нежелательные функциональные зависимости. В противном случае приходится прибегать к процедуре, называемой декомпозицией (разложением), при которой данное множество отношений заменяется другим множеством отношений (при этом их число возрастет), являющихся проекциями первых. Этот процесс зависит от ин-

туиции и опыта разработчика, однако некоторые его моменты можно формали-

зовать.

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

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

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

– аномалия удаления возникает при удалении записей из ненормализован- ной таблицы. Пусть в организации некоторые должности аннулируются. При этом следует удалить соответствующие записи в рассматриваемой таблице. Однако удаление приводит к потере информации о сотруднике, занимавшем эту долж- ность. Такая потеря и называется аномалией удаления.