Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Умк_Базы.doc
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
3 Мб
Скачать
☆

3.2. Типовые модели данных субд

При изучении данной темы Вы должны рассмотреть концепции классических моделей БД их структуру и используемые в них операции.

Для проверки изучения материала темы Вам предстоит ответить на вопросы для самопроверки.

Если Вы испытываете затруднения в ответе на какой-либо вопрос, обратитесь к главе 4 учебника [4].

3.2.1. Иерархическая и сетевая модель данных

Иерархическая модель данных является наиболее простой среди всех моделей. Исторически она появилась первой среди всех моделей: именно эту модель поддерживает первая из зарегистрированных промышленных СУБД IMS фирмы IBM (1969 г).

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

Иерархическая модель имеет дело с древовидными структурами, в которых объекты модели представлены узлами дерева и называются сегментами.

Рис. 3.3. Иерархическая модель данных

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

Аномалия включения: В БД (модель 1) невозможно включить не оперировавшего хирурга.

Аномалия удаления: так как при удалении узла исключаются и все его подузлы, то при удалении хирурга из БД (модель 2) исчезают все его пациенты.

Иерархическая модель обладает следующими свойствами.

  1. Существует корень. В базе столько деревьев, сколько объектов в ILM.

  2. Узел содержит атрибуты.

  3. Исходный и зависимый узлы находятся в отношении «непосредственный предок и потомок». Узлы добавляются горизонтально и вертикально.

  4. Потомок соединен единственной связью с предком.

  5. Предок может иметь несколько потомков.

  6. Доступ к данным производится через предка.

  7. Может существовать множество экземпляров узла.

  8. При удалении узла удаляется все его поддерево.

Основной недостаток – невозможность реализации отношения «многие к многим» в рамках одной базы данных.

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

Сетевая модель основана на рекомендациях рабочей группы по базам данных КОДАСИЛ (CODASYL) (1969-1978 гг.).

Согласно рекомендациям, база данных делится на области, те – на записи, состоящие из полей. С другой стороны, база состоит из наборов, а те – из записей (рис. 3.4).

Связь «пациент-операция» означает «пациент перенес операцию», «хирург-операция» – «хирург выполнил операцию».

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

Рис. 3.4. Сетевая модель данных

Достоинства

  • Реализуется отношение "многие к многим".

  • Высокая производительность.

Недостатки

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

Для организации физического размещения сетевых и иерархических данных в памяти ЭВМ могут использоваться следующие группы методов:

  • представление линейным списком с последовательным распределением памяти;

  • представление связными линейными списками (методы, использующие указатели и справочники).

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

Иерархическая модель геометрически изоморфна дереву, и является частным случаем сетевой модели.