- •Основные понятия баз данных Определения
- •Логическая организация баз данных
- •Типовые функции обработки данных
- •Основные требования к базам данных
- •Создание базы данных и ввод данных
- •Многопользовательская технология обработки данных бд
- •Модели данных, поддерживаемые в субд
- •Сетевые и иерархические модели данных
- •Структуры данных сетевых и иерархических моделей
- •Связи объектов в сетевых и иерархических моделях данных
- •Операции обработки данных модели
- •Сравнение сетевых и иерархических моделей
- •Реляционная модель данных
- •Структуры данных реляционной модели
- •Определения и основные понятия реляционного подхода
- •Нормализация данных
- •Логические связи в реляционной модели, реляционная бд
- •Контрольные вопросы
Сравнение сетевых и иерархических моделей
В строго иерархических моделях, как правило, любой объект (запись, сегмент) может подчиняться только одному объекту вышестоящего уровня. В сетевых моделях – любой объект (запись, файл) может быть подчинен нескольким объектам. Отличие в топологии иерархической и сетевой модели схематически иллюстрирует рис.10.2.
Рис.2. Иллюстрация особенностей моделей по топологии и доступу
В иерархических моделях непосредственный доступ по ключу, как правило, возможен только к объекту самого высокого уровня, который не подчинен другим объектам. К другим объектам доступ осуществляется по связям от объекта на вершине модели. В сетевых моделях непосредственный доступ по ключу может обеспечиваться к любому объекту независимо от его уровня в модели. Возможен также доступ по связям от любой точки доступа.
Структура объекта (записи, файла) в сетевых моделях чаще бывает линейной и реже имеет иерархическую структуру. Объект линейной структуры состоит только из простых и ключевых атрибутов. Структуры данных более низкого уровня также могут иметь свою специфику и названия. Например, атрибут – аналог элемента данных. Структура объекта (записи, сегмента) в иерархических моделях может быть иерархической (см. рис.10.1.) или линейной.
Сетевая модель на примере базы данных, содержащей справочные данные о цехах, складах, изделиях, плановые данные выпуска изделий цехами и учетные данные о сдаче выпущенных цехами изделий на склад, приведена на рис.10.3. Объекты в этой модели являются линейными.
Рис. 3. Пример базы данных, реализованной сетевой моделью
Достоинством сетевых моделей является отсутствие дублирования данных в различных объектах модели. Кроме того, технология работы с сетевыми моделями является удобной для пользователя, так как доступ к данным практически не имеет ограничений и возможен непосредственно к объекту любого уровня. Допустимы всевозможные запросы. Сетевые модели позволяют отображать также иерархические взаимосвязи данных.
В соответствии со структурами данных, используемыми в модели данных, каждая сетевая или иерархическая СУБД имеет свой язык описания данных – язык декларативных команд. Язык манипулирования данными также специфичен для каждой СУБД и зависит от типов структур данных модели. Такие отличия в используемых языковых средствах затрудняют освоение СУБД, поддерживающих сетевые и иерархические модели. Генерация описания схемы БД делает программы зависимыми от структуры БД.
Реляционная модель данных
Концепция реляционной модели принадлежит американскому ученому Е. Кодду. Реляционные модели данных (РМД), в отличие от рассмотренных выше сетевых и иерархических, характеризуются простотой структуры данных, удобным для пользователя табличным представлением и доступом к данным.
Возможность использования формального аппарата алгебры отношений и реляционного исчисления для обработки реляционной модели данных обеспечивает использование типовых простых средств обработки в различных реляционных СУБД. К таким средствам относится, например, реляционный язык структурированных запросов SQL.
Реляционная модель данных является совокупностью простейших двумерных реляционных таблиц-отношений. Связи между двумя логически связанными таблицами в реляционной модели устанавливаются по равенству значений одинаковых атрибутов таблиц-отношений. Таблица-отношение является универсальным объектом реляционных моделей. Это обеспечивает возможность унификации обработки данных в различных СУБД, поддерживающих реляционную модель. Операции обработки реляционных моделей основаны на использовании универсального аппарата алгебры отношений и реляционного исчисления.
Преимущества реляционных моделей. К достоинствам реляционной модели относятся простота представления данных реляционной модели благодаря табличной форме и минимальная избыточность данных при нормализации таблиц-отношений. В реляционных моделях обеспечивается независимость приложений пользователя от данных, допускающая включение или удаление отношений, изменение атрибутного состава отношений. В отличие от иерархических и сетевых, реляционные базы данных не требуют описания схемы данных и ее генерации, т.е. не требуется настройка СУБД на конкретную структуру БД. Универсальность процедур обработки данных является основой типовых средств в различных реляционных СУБД.