Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kolokvium / MARTIN3.DOC
Скачиваний:
29
Добавлен:
19.04.2013
Размер:
92.67 Кб
Скачать

Каноническая структура записей (сегментов)

Как уже говорилось выше, схему или подсхему базы данных мож­но представлять в виде овал - диаграммы, т. е. графа, состоящего из направленных связей между типами элементов данных.

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

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

Комбинированные овал-диаграммы

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

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

Устранение избыточности

Если использовать для изображения связей одиночные стрелки, можно устранить те связи, которые избыточны. В приведенной ниже группе элементов данных связи X и , по-видимому, избыточны:

Если известно, что Х---У и У---Z,, то это означает, что Х---Z (т. е. для каждого значения X существует одно значение Z). Употребляя термины гл. 14, можно сказать, что X идентифицирует У, У идентифи­цирует Z, следовательно, X идентифицирует Z.

Почему стрелка от X к Z «по-видимому» избыточна? Разве она не всегда является избыточной? К сожалению, в этом нельзя быть абсо­лютно уверенным, так как неизвестен смысл связи. Как уже говори­лось ранее, между одними и теми же двумя элементами данных может существовать более одной связи:

Поэтому, прежде чем уничтожать связь Х---Z, необходимо оценить смысл ассоциаций элементов, чтобы быть уверенным в обеспечении связи Х---Z с помощью связей Х---Z и У---Z..

В приведенном ниже примере нельзя уничтожить такую связь. Служащий имеет номер телефона:

Служащий докладывает управляющему:

Управляющий также имеет номер телефона:

Обьединяя эти элементы, получим:

Было бы неразумно полагать, что связь СЛУЖАЩИЙ---НОМЕР ТЕЛЕФОНА избыточна, и уничтожить ее.

Номер телефона служащего отличается от номера телефона управляющего, и нам необходимы обе связи:

Так как НОМЕР-ТЕЛЕФОНА - атрибут, то может существовать, соответствующий самостоятельный элемент данных с этим именем, ассоциированный как с элементом СЛУЖАЩИЙ, так и с элементом УПРАВЛЯЮЩИЙ.

Аналогичный пример связей имеет место для случая, когда в.е элементы данных снабжены ключами:

В данном случае связи между тремя ключами-элементами данных должны быть такими, как они изображены. Тем не менее ситуация в которой связь Х---Z не может быть уничтожена, скорее исключение, чем правило.

В указанном выше случае появляются дополнительные трудности, так как возникает путаница: УПРАВЛЯЮЩИЙ и СЛУЖА­ЩИЙ на самом деле представляют собой элементы данных одного и того же типа. Управляющий - это тоже служащий. Мы будем руко­водствоваться следующим правилом: избыточная простая связь (о одной стрелкой) может быть устранена, но каждый раз, применяя это правило, необходимо быть предельно внимательным для того, чтобы устранять только реальную избыточность. иногда избыточные связи могут удаляться из длинной цепи связей. Например, в случае

А---D является кандидатом на удаление.

Соседние файлы в папке Kolokvium