Нормальные формы


Глава 7. Проектирование и использование баз данных



жүктеу 4,63 Mb.
бет42/72
Дата11.02.2023
өлшемі4,63 Mb.
#41261
түріУчебное пособие
1   ...   38   39   40   41   42   43   44   45   ...   72
Копия Теория баз данных

Глава 7. Проектирование и использование баз данных.

    1. Проблемы проектирования

Проектирование информационных систем, включающих в себя базы данных, осу­ществляется на физическом и логическом уровнях. Решение проблем проектирова­ния на физическом уровне во многом зависит от используемой СУБД, зачастую авто­матизировано и скрыто от пользователя. В ряде случаев пользователю предоставля­ется возможность настройки отдельных параметров системы, которая не составляет большой проблемы.


Логическое проектирование заключается в определении числа и структуры таблиц, формировании запросов к БД, определении типов отчетных документов, разработке алгоритмов обработки информации, создании форм для ввода и редактирования дан­ных в базе и решении ряда других задач.
Решение задач логического проектирования БД в основном определяется специ­фикой задач предметной области. Наиболее важной здесь является проблема струк­туризации данных, на ней мы сосредоточим основное внимание.
При проектировании структур данных для автоматизированных систем можно выделить три основных подхода:
1. Сбор информации об объектах решаемой задачи в рамках одной таблицы (одного отношения) и последующая декомпозиция ее на несколько взаимосвязанных таб­лиц на основе процедуры нормализации отношений.
2. Формулирование знаний о системе (определение типов исходных данных и их взаимосвязей) и требований к обработке данных, получение с помощью CASE-системы (системы автоматизации проектирования и разработки баз данных) готовой схе­мы БД или даже готовой прикладной информационной системы.
3. Структурирование информации для использования в информационной системе в процессе проведения системного анализа на основе совокупности правил и рекомендаций.


Избыточное дублирование данных и аномалии

Следует различать простое (неизбыточное) и избыточное дублирование данных. Наличие первого из них допускается в базах данных, а избыточное дублирование дан­ных может приводить к проблемам при обработке данных. Приведем примеры обоих вариантов дублирования.


Пример неизбыточного дублирования данных представляет приведенное на рис. 7.1 от­ношение C_T с атрибутами Сотрудник и Телефон. Для сотрудников, находящихся в одном помещении, номера телефонов совпадают. Номер телефона 4328 встречается несколько раз, хотя для каждого служащего номер телефона уникален. Поэтому ни один из номеров не является избыточным. Действительно, при удалении одного из номеров телефонов будет утеряна информация о том, по какому номеру можно дозвониться до одного из служащих.
С_Т

Сотрудник

Телефон

Иванов

3721

Петров

4328

Сидоров

4328

Егоров

4328

Рис. 7.1. Неизбыточное дублирование


Пример избыточного дублирования (избыточности) представляет приведенное на рис. 7.2а отношение С_Т_Н, которое, в отличие от отношения С_Т, дополнено атри­бутом H_комн (номер комнаты сотрудника). Естественно предположить, что все слу­жащие в одной комнате имеют один и тот же телефон. Следовательно, в рассматрива­емом отношении имеется избыточное дублирование данных. Так, в связи с тем, что Сидоров и Егоров находятся в той же комнате, что и Петров, их номера можно узнать из кортежа со сведениями о Петрове.
C_T_H С_Т_Н
a) б)

Сотрудник

Телефон

Н_комн

Иванов

3721

109

Петров

4328

111

Сидоров

4328

111

Егоров

4328

111

Сотрудник

Телефон

Н_комн

Иванов

3721

109

Петров

4328

111

Сидоров

---

111

Егоров

---

111

Рис. 7.2. Избыточное дублирование


На рис. 7.2б приведен пример неудачного отношения С_Т_Н, в котором вместо телефонов Сидорова и Егорова поставлены прочерки (неопределенные значения).


Неудачность подобного способа исключения избыточности заключается в следую­щем. Во-первых, при программировании придется потратить дополнительные уси­лия на создание механизма поиска информации для прочерков таблицы. Во-вторых, память все равно выделяется под атрибуты с прочерками, хотя дублирование данных и исключено. В-третьих, что особенно важно, при исключении из коллектива Петро­ва кортеж со сведениями о нем будет исключен из отношения, а значит, уничтожена информация о телефоне 111-й комнаты, что недопустимо.
Возможный способ выхода из данной ситуации приведен на рис. 7.3. Здесь пока­заны два отношения: С_Н и Н_Т, полученные путем декомпозиции исходного отно­шения: С_Т_Н. Первое из них содержит информацию о номерах телефонов в каждой из комнат, второе - о номерах комнат, в которых располагаются сотрудники. Теперь, если Петрова и уволят из учреждения и, как следствие этого, удалят всякую информацию о нем из баз данных учреждения, это не приведет к утере инфор­мации о номере телефона в 111-й комнате.

Н_Т C_H



Телефон

Н_комн




3721

109




4328

111



































Сотрудник

Н_комн

Иванов

109

Петров

111

Сидоров

111

Егоров

111

Рис. 7.3. Исключение избыточного дублирования


Процедура декомпозиции отношения С­_Т_Н на два отношения С_Н и Н_Т явля­ется основной процедурой нормализации отношений.


Избыточное дублирование данных создает проблемы при обработке кортежей от­ношения, названные Э. Коддом «аномалиями обновления отношения». Он показал, что для некоторых отношений проблемы возникают при попытке удаления, добавле­ния или редактирования их кортежей.

жүктеу 4,63 Mb.

Достарыңызбен бөлісу:
1   ...   38   39   40   41   42   43   44   45   ...   72




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау