2 модели данных 1
2.1 Общие понятия 1
2.1.1 Основные модели данных 1
2.2 Реляционная модель данных 3
2.2.1 Основные понятия РМД 3
2.2.2 Основные операции реляционной алгебры 6
2.2.3 Нормализация данных реляционной модели 10
2.2.4 Типы отношений в реляционной модели 14
2.2.5 Преимущества и недостатки реляционных моделей 17
2.3 Объектные модели данных 18
модели данных Общие понятия
Средства управления данными предназначены для обеспечения взаимодействия приложений и непосредственно пользователей с данными предметной области, традиционно аккумулированными в базах данных (БД). Одним из наиболее важных вопросов создания БД является выбор модели данных и соответствующей ей реализации СУБД.
Модель данных представляет собой формализм описания совокупности взаимосвязанных структур данных и операций над ними.
В общем случае модель данных поддерживает спецификацию объектов предметной области, их классификацию и взаимосвязи между ними для адекватного отображения предметной области. Исторически различают следующие модели данных: файловая, иерархическая, сетевая, объектная, реляционная.
Файловая модель данных представляет собой совокупность независимых файлов из однотипных записей с линейной структурой. Основными типами структур данных для файловой модели являются поле, запись, файл. Поле соответствует признаку объекта предметной области. Запись – совокупность полей, соответствующих логически связанным признакам объекта. Файл – множество одинаковых по структуре записей со значениями полей.
Каждый экземпляр записи однозначно идентифицируется уникальным ключом записи. Различают первичный ключ (одно или несколько полей однозначно идентифицируют запись) и вторичный ключ (поле, значение которого может повторяться в различных записях). Для эффективного доступа к записям файла предназначен механизм индексирования, который создает индексный файл, упорядочивающий записи по значению ключа. Индексный файл содержит указатели на записи исходного файла данных для каждого значения ключа.
Иерархическая и сетевая модели данных отражает подчиненность взаимосвязанных объектов. Основными типами структур данных для этих моделей являются: поле, агрегат, запись. Поле – простейший элемент данных. Агрегат – подмножество элементов данных, допускающее их множественные значения. Запись – составной агрегат, который не входит в состав других агрегатов и характеризуется структурой взаимосвязей ее элементов и агрегатов. Таким образом, запись может иметь иерархическую структуру. Тип записи – множество экземпляров записи одинаковой структуры. Запись конкретного типа является объектом в иерархической и сетевой модели данных. На рис. 2.1 приведен пример иерархической записи.
Иерархическая модель состоит из упорядоченного набора деревьев, каждое из которых состоит из «корневого» (предок) и упорядоченного набора связанных с ним поддеревьев (потомок). К операторам манипулирования иерархическими данными можно отнести следующие :
- найти дерево по заданному признаку; перейти от одного дерева к другому; перейти к записи внутри дерева или в порядке обхода иерархии (сверху вниз, слева направо); вставить новую запись в указанную позицию; удалить текущую запись.
В сетевой модели поддеревья могут иметь любое число корневых. Фактически сетевая модель состоит из набора записей и множества связей между ними.
К операторам манипулирования сетевыми данными можно отнести следующие :
- найти запись по заданному признаку перейти от предка к потомку по указанной связи перейти от потомка к предку по некоторой связи создать новую запись или удалить существующую модифицировать заданную запись включить в связь и исключить из связи переставить в другую связь.
Рис. 2.1 Пример иерархической записи
Отличительные особенности иерархической и сетевой моделей: в иерархической модели любой объект подчиняется только одному объекту вышестоящего уровня, тогда как в сетевой модели любой объект может иметь множественную подчиненность. Следствием этого является наличие одной точки прямого доступа по ключу в иерархическую модель и множества точек прямого доступа по ключу в сетевой модели (рис. 2.2).
Рис. 2.2 Топология иерархической и сетевой моделей
Сетевые модели данных по сравнению с иерархическими являются более универсальным средством отображения структуры предметной области, поскольку позволяют отображать также иерархические взаимосвязи данных. Достоинством сетевых моделей является отсутствие дублирования данных в различных элементах модели и прямой доступ к объекту любого уровня.
Объектная модель данных строится на концепции класса (типа), который представляет собой набор данных, определяющий состояние экземпляра (объекта), и набор функций, управляющих состоянием объекта. Экземпляр является уникальной копией набора элементов данных, принадлежащих определенному классу. Каждый элемент данных принято называть экземплярной переменной, а функции класса - методами.
Первичной характеристикой объектно-ориентированного похода является метод наследования, который позволяет описать новый класс, определяя только отличия данного класса от другого, называемого классом наследником. Таким образом, можно построить ориентированный граф типа дерева, который называют иерархией классов, причем на каждом уровне иерархии будет наблюдаться детализация свойств предыдущего уровня иерархии.
Объектная модель позволяет:
- обеспечить все возможности, предоставляемые традиционными СУБД, включая запросы данных, контроль совместного доступа к данным, контроль целостности и несанкционированного доступа к данным; определить внутреннее состояние объекта (атрибуты) и поведение (процедуры);
- обеспечить взаимодействие межу объектами путем передачи сообщений между ними.
Реляционная модель данных Основные понятия РМД
Реляционная модель данных представляет собой совокупность простейших двумерных таблиц. Основными типами структур данных для этой модели являются: таблица, строка, атрибут. Структура таблицы определяется совокупностью столбцов. В каждой строке таблицы содержится по одному значению в соответствующем столбце. В таблице не может быть двух одинаковых строк. Общее число строк не ограничено.
Столбец соответствует одному элементу данных — атрибуту, который является простейшей структурой данных. В таблице не могут быть определены множественные элементы, группа или повторяющаяся группа, как в рассмотренных выше сетевых и иерархических моделях. Каждый столбец таблицы должен иметь имя соответствующего атрибута. Один или несколько атрибутов, значения которых однозначно идентифицируют строку таблицы, являются ключом таблицы.
Теория проектирования реляционных моделей данных относится к разделу математики, называемому теорией множеств, в которой широко используются комбинаторный анализ и статистические методы. Правила и символы, с помощью которых определяются реляционные модели, называются реляционной алгеброй.
В реляционном подходе к построению БД также используется терминология теории множеств. Простейшая двумерная таблица определяется как отношение. Столбец таблицы со значениями соответствующего атрибута называется доменом, а строки со значениями разных атрибутов — кортежем. На рис. 2.3 представлена структура реляционной таблицы-отношения
.
|
|
| … |
| … |
|
|
|
| … |
| … |
|
|
|
| … |
| … |
|
… | … | … | … | … | … | … |
|
|
|
|
| ||
… | ||||||
|
|
|
|
|
Рис. 2.3 Структура реляционной таблицы-отношения ![]()
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 |


