Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция3.doc
Скачиваний:
4
Добавлен:
19.09.2019
Размер:
105.98 Кб
Скачать

1) Простота и понятность схемы данных.

2) удобство реализации на ЭВМ.

3) эффективная обработка данных.

Недостатки:

1) Отсутствие стандартных средств идентификации отдельных записей.

2) сложность описания иерархических и сетевых связей.

3) сложность обращения к записям для пользователя.

3. Иерархическая модель

В иерархической модели связи между данными можно описать с помощью упорядоченного графа (дерева):

Структуры данных

Для описания структуры (схемы) иерархической БД на некотором языке программирования используется тип «дерево». Данный тип схож с типом «запись» языка Паскаль. Как и там, в типе «дерево» допускается вложенность типов, т.е. данный тип является составным. Подтипы также являются типом «дерево».

Пример типа дерева (схемы иерархической БД):

Здесь Отдел является предком для Начальник и Сотрудники, а Начальник и Сотрудники - потомки Отдел. Между типами записи поддерживаются связи.

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

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

База данных с такой схемой могла бы выглядеть следующим образом (мы показываем один экземпляр дерева):

Для БД определен полный порядок обхода - сверху-вниз, слева-направо.

Манипулирование данными

Примерами типичных операторов манипулирования иерархически организованными данными могут быть следующие:

  1. Поиск указанного экземпляра БД (например, дерева со значением 310 в поле Отд_номер);

  2. Переход от одного дерева к другому или переход от одной записи к другой внутри дерева (например, от отдела - к первому сотруднику);

  3. Вставка или удаление записи в указанную позицию;

Ограничения целостности

Автоматически поддерживается целостность ссылок между предками и потомками.

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

Достоинства:

1) эффективное использование памяти ЭВМ.

2) быстрота выполнения основных операций.

3) эффективна при работе с иерархически упорядоченной информацией.

Недостатки:

1) громоздкость модели.

2) сложность логических связей.

3) сложность понимания для обычного пользователя.

4. Сетевая модель

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

Для описания схемы сетевой БД используются две группы типов: «запись» и «связь». Тип «связь» определяется для двух типов «запись»: предка и потомка. В сетевой модели данных, в отличие от иерархической, запись-потомок может иметь произвольное число записей-предков (сводных родителей).

Простой пример сетевой схемы БД:

Манипулирование данными

Примерный набор операций может быть следующим:

  1. Найти конкретную запись в наборе однотипных записей (инженера Сидорова);

  2. Перейти от предка к первому потомку по некоторой связи и от потомка к предку (к первому сотруднику отдела 310 или найти отдел Сидорова);

  3. Перейти к следующему потомку в некоторой связи (от Сидорова к Иванову);

  4. Создать новую запись, уничтожить запись, модифицировать запись;

  5. Включить в связь, исключить из связи, переставить в другую связь и т.д.

Ограничения целостности

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

Достоинства:

1) эффективное использование памяти ЭВМ.

2) быстрота выполнения основных операций.

3) допустимость образования произвольных связей.

Недостатки:

1) сложность и жесткость схемы БД.

2) ослабление контроля целостности связей (обратная сторона достоинства №3).

3) сложность понимания и выполнения обработки информации в БД обычным пользователем.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]