Ядром любой базы данных является модель данных. Модель данных представляет собой множество структур данных, ограничений целостности и операций манипулирования данными. С помощью модели данных могут быть представлены объекты предметной области и взаимосвязи между ними.
Модель данных - совокупность структур данных и операций их обработки.
СУБД основывается на использовании иерархической, сетевой или реляционной модели, на комбинации этих моделей или на некотором их подмножестве.
Рассмотрим три основных типа моделей данных: иерархическую, сетевую и реляционную.
Иерархическая модель
Иерархическая модель организует данные в виде древовидной структуры. К основным понятиям иерархической структуры относятся: уровень, элемент (узел), связь. Дерево представляет собой иерархию элементов, называемых узлами. Узел - это совокупность атрибутов данных, описывающих некоторый объект. На самом верхнем уровне иерархии имеется один и только один узел - корень. Каждый узел, кроме корня, связан с одним узлом на более высоком уровне, называемом исходным для данного узла. Ни один элемент не имеет более одного исходного. Каждый элемент может быть связан с одним или несколькими элементами на более низком уровне. Они называются порожденными.
В иерархической системе (построенной на основе иерархической модели) запись «потомок» должна иметь одного «предка». Автоматически поддерживается целостность ссылок между предками и потомками. Основное правило: никакой потомок не может существовать без своего родителя. Аналогичное поддержание целостности по ссылкам между записями, не входящими в одну иерархию, не поддерживается.
Для БД определен полный порядок обхода - сверху вниз, слева направо.
Сетевая модель
Сетевые модели являются расширением иерархических. Сетевая модель организует данные в виде сетевой структуры. Структура называется сетевой, если в отношениях между данными порожденный элемент имеет более одного исходного.
В сетевой структуре при тех же основных понятиях (уровень, узел, связь) каждый элемент может быть связан с любым другим элементом.
В сетевой структуре данных «потомок» может иметь любое число «предков». Между ветвями могут существовать горизонтальные связи. «Наборы» соединяются при помощи записей-связок, образуя сложные цепочки.
Сложность практического использования иерархических и сетевых систем определила переход к реляционным БД.
Реляционная модель