Модели данных
Модели баз данных базируются на современном подходе к обработке информации, состоящем в том, что структуры данных обладают относительной устойчивостью. Дело в том, что объекты, для управления которыми создаются информационные системы, если изменяются во времени то редко и незначительно. Поэтому возможно построение базы данных с постоянной структурой и изменяемыми значениями данных. Структура базы данных должна отображать информационную модель предметной области, позволять формировать элементы данных (записи) и взаимосвязи между ними. При этом взаимосвязи обычно типизированы следующим образом:
“один к одному” - одна запись может быть связана только с одной другой записью;
“один ко многим” - одна запись может быть связана со многими другими;
“многие ко многим” - одна и та же запись может входить в отношения со многими другими записями.
Использование того или иного типа взаимосвязи определило четыре основные модели баз данных: иерархическую, сетевую, реляционную и объектно-ориентированную.
Иерархическая модель данных представляет данные в виде древовидной структуры и является реализацией логических отношений “один ко многим” (или “целое - часть”). Граф отношений в виде дерева отображает иерархию элементов, называемых узлами. Узел содержит один или несколько атрибутов, описывающих объект в данном узле. Корневой узел (или просто – корень) находится на самом верхнем уровне. Остальные узлы являются или исходными (если узел, по отношению к связанным с ним, находится на более высоком уровне), или порожденными (если узел находится на более низком уровне). Между исходным и порожденными узлами существует отношение “один ко многим”. Доступ к порожденным узлам возможен только через исходный узел, поэтому существует только один путь доступа к каждому узлу. Вид иерархической модели данных представлен на рис. 15.
Рис. 15. Схема иерархической модели данных
Достоинствами иерархической модели данных являются: 1) быстрота доступа, так как для поиска необходимой информации нужно двигаться от корня к листьям, сверху вниз, что упрощает процедуру доступа; 2) простота описания модели данных. Недостатками иерархической модели данных являются: 1) сложность отображения связей “многие ко многим”; 2) жесткость структуры, которая усложняет операции включения информации о новых объектах в базу данных и удаления устаревшей; 3) доступ к любому узлу возможен только через корневой узел, что часто делает невозможным получение требуемой информации за один проход.
Сетевая модель данных позволяет отображать отношения “один ко многим” и “многие ко многим”. В ее основу положены сетевые структуры. Любой элемент сетевой структуры может быть связан с любым другим элементом. База данных, описываемая сетевой моделью, состоит из областей. Каждая область состоит из записей, каждая запись - из полей. Записи могут объединяться в логическую структуру не только по областям, но и с помощью так называемых наборов. Набор - это поименованное дерево, которое позволяет строить простые сетевые структуры и многоуровневые деревья. Связи делятся на основные и зависимые. Каждый набор должен содержать один экземпляр основных записей и может содержать любое количество экземпляров зависимых записей. В сетевой модели допустимы любые виды связей между записями и отсутствует ограничение на число обратных связей. Должно соблюдаться только правило: связь соединяет основную и зависимые записи. Пример сетевой модели данных показан на рис. 17.
Достоинство сетевой модели БД - более высокая информационная гибкость по сравнению с иерархической моделью данных.Недостатки: сложность навигации по базе данных; жесткость структуры модели.
В реляционных базах данных отношения представляются в виде двумерной таблицы. Каждое отношение представляет собой подмножество декартовых произведений доменов. Доменом здесь называется множество значений, расположенных в столбце соответствующего атрибута двумерной таблицы.
Рис. 17. Схема сетевой модели данных
Строка значений двумерной таблицы составляет так называемый кортеж. Такие таблицы обладают следующими свойствами: 1) каждый элемент таблицы представляет собой один элемент данных; 2) элементы столбца имеют одинаковую природу и столбцам присвоены имена; 3) в таблице нет двух одинаковых строк; 4) строки и столбцы могут просматриваться в любом порядке вне зависимости от их информационного содержания. В таблице 2 приведен пример реляционной модели данных.
Таблица 2
Пример реляционной модели данных
№ личного дела | Фамилия | Имя | Отчество | Дата рождения | Группа |
Сергеев | Петр | Михайлович | 01.01.76 | ||
Петрова | Анна | Владимировна | 15.03.75 | ||
Анохин | Андрей | Борисович | 14.04.76 |
Достоинствами реляционной базы данных являются: 1) простота модели данных; 2) гибкость системы защиты - для каждого отношения может быть задана правомерность доступа; 3) независимость данных; 4) возможность манипулирования данными с помощью математически строгой теории реляционной алгебры. Это четвертое достоинство обусловило ее наибольшее распространение в информационных системах.
Объектно-ориентированные модели данных объединяют в себе две модели данных - реляционную и сетевую и используются для создания БД со сложными структурами данных.