Модели данных

Ядром любой БД является модель данных, с помощью которой могут быть представлены объекты, предметные области и взаимосвязи между ними.

Модель данных – совокупность структур данных и операции их обработки.

Существует несколько видов моделей данных, к которым можно отнести:
— иерархическую;
— сетевую;
— реляционную;
— постреляционную;
— объектно–ориентированную;
— многомерную.

Иерархическая и сетевая модели данных стали применяться в системах управления БД в начале 60–х годов. В начале 70–х годов была предложена реляционная модель данных (Эдгар Кодд), которая является на сегодняшний момент самой распространенной.

В реляционной модели данных объекты и взаимосвязи между ними представляются с помощью таблиц, которые характеризуются следующими свойствами:
— каждый столбец имеет уникальное имя;
— одинаковые строки в таблице отсутствуют;
— порядок следования строк и столбцов может быть произвольным.

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

Существует несколько видом моделей данных, к которым можно отнести иерархическую, сетевую, реляционную, постреляционную и объектно–ориентированную модели данных.

Иерархическая и сетевая модели данных стали применяться в системах управления базами данных в начале 60-х годов. В начале 70-х годов была предложена реляционная модель данных.

Иерархическая модель данных
Представляет сбой совокупность элементов, связанных между собой по определенным правилам. Иерархическая модель данных строится по принципу иерархии типов объектов, то есть один тип объекта является главным, а остальные, находящиеся на низших уровнях иерархии, – подчиненными. Между главным и подчиненными объектами устанавливается взаимосвязь «один ко многим».

Узлы и ветви образуют иерархическую древовидную структуру. Узел является совокупностью атрибутов, описывающих объект. Наивысший в иерархии узел называется корневым (это главный тип объекта). Корневой узел находится на первом уровне. Зависимые узлы (подчиненные типы объектов) находятся на втором, третьем и др. уровнях.

Объекты, связанные иерархическими отношениями, образуют ориентированный граф.

Основные понятия иерархической структуры:
— узел (элемент) – совокупность атрибутов данных, описывающих некоторый объект (на схеме это вершины графа). Каждый узел, находящийся на более низком уровне, связан только с одним узлом, находящимся на более высоком уровне. Узел может иметь только одного родителя. Иерархическое дерево имеет только оду вершину (корень), неподчиненную никакой другой вершине и находящуюся на самом верхнем (первом) уровне.
— уровень;
— связь.

Основные операции манипуляции с БД: поиск элемента в БД; переход от одного дерева к другому; перемещение от записи к записи внутри дерева; вставка некоторой записи; удаление элемента.

Достоинства: эффективное использование памяти и неплохие показатели временных затрат на выполнение операций; пригодны для формирования БД с теми данными, которые сами по себе имеют иерархическую структуру.
Недостатки: громосткость; сложность физической реализации для больших древовидных структур.
Сетевая модель данных
Данные в такой модели представлены в виде коллекции записей, а связи – в виде наборов. Сетевая модель – это граф с записями в виде узлов графа и наборами в виде его ребер. В основу положены графы произвольной структуры, которые отражает взаимосвязи между данными в этой модели.

На формирование связей особых ограничений не накладывается в противовес иерархический модели данных. В иерархической модели каждый потомок может иметь связь только с одним родителем, а в сетевой – с несколькими.

Основные операции манипуляции с БД: поиск элемента в БД; переход от предка к некоторому потомку; переход от потомка к предку; вставка новой записи; удаление записи и др.

Достоинства: эффективное использование затрат памяти (ресурсы) при манипулировании данными; использовать для решения многих задач из–за различных связей.
Недостатки: сложность физической реализации; жесткость связи между элементами данных накладывает ряд ограничений на удобство манипуляции данными; ослаблен контроль целостности связей между записями.
Реляционная модель данных
Эти модели характеризуются простотой структуры данных, удобными для пользователя табличным представлением и возможностью использования формального аппарата алгебры отношений и реляционного исчисления для обработки данных. Реляционная модель ориентирована на организацию данных виде двумерных таблиц.

Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами: все столбцы в таблице – однородные (имеют одинаковый тип); каждый столбец имеет уникальное имя; одинаковые строки в таблице отсутствуют; порядок следования строк и столбцов может быть произвольным. Отношения представлены в виде таблиц, строки которых соответствуют кортежам или записям, а столбцы – атрибутам отношений, доменам, полям.

Поле, каждое значение которого однозначно определяет соответствующую запись, называется простым ключом (ключевым полем). Если записи однозначно определяются значениями нескольких полей, то такая таблица БД имеет составной ключ. Чтобы связать две реляционные таблицы, необходимо ключ первой таблицы ввести в состав ключа второй таблицы (возможно совпадение ключей), в противном случае нужно ввести в структуру первой таблицы внешний ключ – ключ второй таблицы.

Достоинства: простота моделирования и физическая реализация, высокая эффективность обработки данных.
Недостатки: отсутствие стандартных средств идентификации каждой отдельной записи.

Реляционный подход приносит относительную простоту работы разработчику информационной системы, поскольку прикладная область часто описывается в терминах таблиц достаточно естественно.

Постреляционная модель данных
Классическая реляционная модель предлагает неделимость данных хранящихся в полях записей таблиц.

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

В этой модели, в отличие от реляционной, данные хранятся более эффективно и не требуется выполнять операции соединения двух таблиц.

Достоинства: обеспечивает высокую наглядность представления информации и повышенную эффективность ее обработки.
Недостатки: трудоемкий процесс обеспечения целостности и непротиворечивости данных, которые хранятся в базе данных.
Объектно–ориентированная модель
Моделью данных, привлекающей нарастающее внимание с конца 80-х гг., является объектная, или объектно-ориентированная модель. Основные понятия, с которыми оперирует эта модель:
— объекты, обладающие внутренней структурой и однозначно идентифицируемые уникальным внутрисистемным ключом;
— классы, являющиеся, по сути, типами объектов;
— операции над объектами одного или разных типов, называемые «методами»;
— инкапсуляция структурного и функционального описания объектов, позволяющая разделять внутреннее и внешнее описания;
— наследуемость внешних свойств объектов на основе соотношения «класс–подкласс».

Данная модель связана с развитием Интернет–технологий. Эта модель характеризуется следующими свойствами: базовыми примитивами являются объекты и литералы; каждый объект имеет уникальный идентификатор, а литерал его не имеет; объекты и литералы различаются по типу; объект на который можно установить ссылку называется экземпляром и хранит определенный набор данных; состояние объекта определяется набором значений; поведение объекта определяется набором операций, которые могут быть выполнены над ними. Также к свойствам можно отнести инкапсуляция, полиморфизм, наследование.

Достоинства:
— возможность для пользователя системы определять свои сколь угодно сложные типы данных;
— наличие наследуемости свойств объектов;
— повторное использование программного описания типов объектов при обращении к другим типам, на них ссылающимся.
Недостатки:
— эта модель не исследована столь тщательно математически, как реляционная;
— невозможно перенести объекты в другую базу данных.
Добавить комментарий