Иерархическая
и сетевая модели данных стали применяться в системах управления базами
данных в начале 60-х годов. В начале 70-х годов была предложена реляционная
модель данных. Эти три модели различаются в основном способами представления
взаимосвязей между объектами.
Иерархическая
модель
Сетевая
модель
Реляционная
модель
Достоинства
реляционных моделей данных
Иерархическая
модель данных строится по принципу иерархии типов объектов, то есть один
тип объекта является главным, а остальные, находящиеся на низших уровнях
иерархии, - подчиненными (рис. 2.3). Между главным и подчиненными объектами
устанавливается взаимосвязь «один ко многим».
Иными
словами, для данного главного типа объекта существует несколько подчиненных
типов объекта. В то же время для каждого экземпляра главного объекта может
быть несколько экземпляров подчиненных типов объектов. Таким образом, взаимосвязи
между объектами напоминают взаимосвязи в генеалогическом дереве за единственным
исключением: для каждого порожденного (подчиненного) типа объекта
может быть только один исходный (главный) тип объекта.
На
рис. 2.3 узлы и ветви образуют иерархическую древовидную структуру. Узел
является совокупностью атрибутов, описывающих объект. Наивысший в иерархии
узел называется корневым (это главный тип объекта). Корневой узел находится
на первом уровне. Зависимые узлы (подчиненные типы объектов) находятся
на втором, третьем и т. д. уровнях.
Рис.2.3 Схема иерархической модели данных.
Недостатки: из нижних
уровней иерархии нельзя направить информационный поиск по вышележащим узлам.
В сетевой модели данных понятия
главного и подчиненных объектов несколько расширены. Любой объект может
быть и главным и подчиненным (в сетевой модели главный объект обозначается
термином «владелец набора», а подчиненный - термином «член набора»). Один
и тот же объект может одновременно выступать и в роли владельца,
и в роли члена набора. Это означает, что каждый объект может участвовать
в любом числе взаимосвязей. Схема сетевой модели приведена на рис. 2.4.
Рис.2.4. Схема сетевой модели данных.
Реляционная модель
В реляционной модели данных
(ввел в 1970 г. Э. Ф. Кодд.) объекты и взаимосвязи между ними представляются
с помощью таблиц, как это показано на рис. 2.5.
Рис.2.5. Схема иерархической модели данных
Взаимосвязи также
рассматриваются в качестве объектов. Каждая таблица представляет
один объект и состоит из строк и столбцов. В реляционной базе данных каждая
таблица должна иметь первичный ключ (ключевой элемент) - поле или комбинацию
полей, которые единственным образом идентифицируют каждую строку в таблице.
Благодаря своей простоте и естественности представления реляционная модель
получила наибольшее распространение в СУБД для персональных компьютеров.
Признаки, позволяющие
считать таблицу отношением
-
В таблице нет строк с совпадающими ключами (строки уникальны).
-
В каждой строке содержатся значения одного и того же набора атрибутов.
-
Отношения неразложимы (не могут быть элементами другого отношения).
-
Упрощение схемы данных для пользователя.
Как уже известно, древовидная
и сетевая модели объединяют в одной схеме понятия логического и физического
уровней, т. е. построение схемы пользователем требует хорошего знания технических
приемов, реализованных в системе, если необходимо получить эффективную
в использовании БД. Преимуществом реляционной модели перед другими моделями
является простая и удобная для пользователя схема данных, представляемая
в виде таблиц.
-
Улучшение логической и физической независимости.
Логическая независимость допускает
возможность применения одной концептуальной модели различными пользователями.
Физическая независимость дает возможность в целях эффективности использования
БД модифицировать физическую организацию данных и пути доступа. Например,
необходимо добавить или удалить некоторую связь между записями без
изменения программы. В иерархической и сетевой моделях физическая независимость
является слабой, так как схема зависит от физического описания, и, следовательно,
любое физическое изменение пути доступа в той или иной степени влияет на
ПП. Физическая независимость реляционной модели состоит в том, что модель
данных не включает никаких физических описаний. В действительности физическое
представление отношений и путей доступа описывается независимо от описания
логической схемы отношений.
-
Обеспечение пользователя языками высокого уровня.
Манипулирование данными в иерархической
и сетевой моделях производится с помощью процедурных языков. Язык является
непроцедурным, когда с его помощью задают информацию, которую желают получить,
не указывая способа доступа к этой информации. Для реляционных моделей
бессмысленно использовать процедурный язык, поскольку обеспечена
физическая независимость данных. С помощью команд процедурного языка
программист строит стратегию доступа к данным. Но любое изменение пути
доступа приводит к необходимости модификации программы.
-
Оптимизация доступа к БД.
Увеличение физической независимости
и использование непроцедурных языков требуют от системы выбора наилучшей
стратегии доступа. Поскольку в программе не определяется стратегия доступа,
то система выбирает наиболее эффективную из возможных.
-
Улучшение целостности и защиты данных.
Современные СУБД, ориентированные
на иерархические и сетевые модели, имеют ограниченные средства для поддержания
целостности и защиты данных. Требования целостности определяются
логическими терминами на уровне концептуальной схемы. Реляционная модель
позволяет улучшить выражение требований целостности путем использования
языка высокого уровня. Для обеспечения безопасности и секретности
необходимо указать информацию, которую нужно защитить, и пользователей,
применяющих данную информацию. Эффективность описания достигается применением
непроцедурных языков, поскольку они способны идентифицировать информацию
вне зависимости от любого пути доступа.
-
Возможности различных применений.
Использование простой реляционной
схемы и языка запросов, рассчитанного на непрограммистов, позволяет расширить
области применения.
-
Обеспечение методологического подхода.
Главной целью модели БД является
возможность описания реального мира. В реляционной модели определение первой,
второй, третьей нормальных форм, как увидим далее, основывается на математической
теории отношений, позволяет пользователю структурировать информацию, точно
идентифицируя связи, существующие между элементами информации, и ограничения,
которым эти элементы должны удовлетворять. Кроме того, концепция нормальной
формы отношения есть средство измерения уровня качества модели. В частности,
далее увидим, что концептуальная схема содержит только отношения в третьей
нормальной форме. Данная схема предоставляет пользователю возможность изменять
любые значения одних отношений, не затрагивая других.
Недостатком реляционной
модели данных является избыточность по полям (из-за создания связей).