2_02 - МиСПИСТ (УД Модели данных)

Preview:

DESCRIPTION

 

Citation preview

Инструментально-программный

методический комплекс

Методы и средства проектирования информационных систем и технологий

Управление данными

Часть 2.

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

2

2.1. Классификация моделей данных

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

- это некоторая абстракция, которая, будучи

применима к конкретным данным, позволяет

пользователям и разработчикам трактовать их

уже как информацию, то есть сведения,

содержащие не только данные, но и

взаимосвязь между ними.

3

Классификация моделей данныхМодели данных

Инфологические Даталогические Физические

Модель «сущность-связь» (ER)

Документальные Фактографические Основаны на файловых структурах

Основаны на странично-сегментной организации

Дескрипторные

Тезаурусные

Иерархические

Сетевые

Реляционные

Объектно-ориентированные

4

Уровни моделей данных (последовательность разработки БД)

Предметная область(часть реального мира, отражаемая в БД)

Пользователи АБД

ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ

Обобщенное, не привязанное к какой-либо СУБД, описание предметной области (набор данных, типов, связей и др.)

ДАТАЛОГИЧЕСКАЯ МОДЕЛЬ

Описание на языке конкретной СУБД

ФИЗИЧЕСКАЯ МОДЕЛЬ

Описание хранимых данных

База данных

Модели, используемые СУБД

5

2.2. Взаимосвязи в моделях данных Связь - это ассоциирование двух или более объектов

Основное назначение связей - это возможность организации поиска данных в базе данных

Типы связей• один к одному;• один ко многим;• многие ко многим.

6

Связь «один-к-одному»

А

Работник

B

Табельный номер

1 1

1 1

7

Связь «один-ко-многим»

А

Цех

B

Технологический агрегат

1 ∞

1 ∞

8

Связь «многие-ко-многим»

А

Изделие

B

Технологическая операция

9

Сегмент (запись) данных - более высокий уровень абстракции, объединение полей данных.

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

Поле данных - минимальная информационная единица, доступная пользователю

с использованием СУБД

Тип сегмента - поименованная совокупность типов полей (элементов) данных, которые в него входят

Экземпляр сегмента - состоит из конкретных значений полей, которые его образуют

Особенность модели - сегменты объединяются в ориентированный древовидный граф

Пример: СУБД Information Management System (IMS) фирмы IBM (1968 г.)

10

Пример иерархии между сегментами

Сегмент типа B

Сегмент типа C

Сегмент типа D

Сегмент типа E

Сегмент типа АУровень 1

Уровень 2

Уровень 3

Логически исходный (корневой) сегмент

Логически подчиненные сегменты

11

Ограничения иерархической структуры данных

• В каждой физической БД существует один корневой сегмент, т.е.

сегмент, у которого нет логически исходного (родительского) типа

сегмента. Уровень, на котором находится данный сегмент,

определяется расстоянием от корневого сегмента;

• Каждый логически исходный сегмент может быть связан с

произвольным числом логически подчиненных сегментов;

• Каждый логически подчиненный сегмент может быть связан

только с одним логически исходным (родительским) сегментом.

Основное правило – никакой потомок не может существовать без

своего родителя.

12

Пример структуры иерархического дерева

Компьютерная фирма Адрес Руководитель

Филиал фирмы Адрес Руководитель

Типовые модели Имя Стоимость Количество на складе

Индивидуальные модели Номер заказа Стоимость Количество

Название сегмента

Названия полей

13

Пример иерархии экземпляров дерева

КЛОСС Адрес Руководитель

Филиал 1 Ленина, 2 Иванов И.И.

Модель 21 Brand 1540 2

Brand 1

Заказ 21

8 2

Филиал 2 Малышева, 4 Петров П.П.

900

2 700 4Заказ 22

2800Модель 22

Заказ 11

18 4 500

12 1500 4Заказ 12

Модель 11 Brand 2500 4

Brand 1 3500

Модель 12

Экземпляр сегмента

Экземпляр поля

14

Преимущества иерархической структуры данных

• Простота понимания и использования, быстрота доступа к данным.

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

15

Недостатки иерархической структуры данных• Трудность реализации взаимосвязей «многие-ко-многим».

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

• Из-за строгой иерархической упорядоченности объектов модели значительно усложняются операции включения и удаления. Удаление исходных объектов влечет удаление порожденных, поэтому выполнение команды «удалить» требует особой осторожности.

• Язык манипулирования данными в иерархической модели поддерживает в явном виде навигационные операции. Эти операции связаны с перемещением указателя, который определяет текущий экземпляр конкретного сегмента.

16

2.4. Сетевая модель данных

Элемент данных - минимальная информационная единица, доступная пользователю

с использованием СУБД

Агрегат данных - более высокий уровень обобщения в модели. Агрегат имеет имя, по которому в системе допустимо обращение к нему.

КвартираДомУлицаГородИндекс

Адрес

КвартираДомУлицаГородИндекс

Адрес

Разработана рабочей группой по базам данных (Data Base Task Group, DBTG) Ассоциации КОДАСИЛ (Conference on Data Systems Languages, CODASYL)

Пример: СУБД Integrated Database Management System (IDMS) компании Cullinet Software, Inc. (1972 г.)

17

Сетевая модель данных

Запись типа А Владелец набора N

Запись типа B

Тип набора N

Член набора N

Запись - совокупность агрегатов или элементов данных, моделирующая некоторый класс объектов реального мира. Различают тип записи и экземпляр записи Набор - двухуровневый граф, связывающий отношением «один ко многим» два типа записи .

Особенности модели - наборы объединяются в сетевой граф, потомок может иметь любое число предков !!!

18

Пример типа набора

Преподаватель Запись-владелец

Занятие

Преподаватель провел занятие

Запись-член

Пример экземпляра набора

Иванов Экземпляр записи-владельца

1 пара

Доцент

12.10.2007 …СУБД… Группа Мт

1 пара 13.10.2007 …СУБД… Группа Мт

2 пара 13.10.2007 …СУБД… Группа Мт

Экземпляры записи-члена

19

Пример связи типов объектов «многие-ко-многим»

Группа Мт-1 (член набора)

Группа Мт-2 (член набора)

Группа Мт-3(член набора)

Иванов

Сидоров

Юзеров

Группа Мт-1 (член набора)

(экз.набора)Ведет занятия в

Петров

(член набора)

(член набора)

(член набора)

(член набора)

Занимается у (экз.набора)

Иванов (владелец набора)

Преподаватель

Группа

Занимается у Ведет занятия в

Пример взаимосвязей экземпляров объектов «многие-ко-многим»

20

Преимущества сетевой структуры данных

• Простота реализации взаимосвязей «многие ко

многим», часто встречающихся в реальном мире

• Наличие успешных реализации СУБД,

поддерживающих сетевую модель

21

Недостаток сетевой структуры данных

• Сложность разработки.

В частности, прикладной программист должен

детально знать логическую структуру базы данных,

поскольку ему необходимо осуществляя навигацию

среди различных экземпляров наборов и

экземпляров записей. Другими словами,

программист должен представлять «свое» текущее

положение в экземплярах наборов при

«продвижении» по базе данных.

22

Преимущества дореляционных моделей данных• Развитие средства управления данными во внешней

памяти на низком уровне

• Возможность построения вручную эффективных прикладных систем;

Недостатки дореляционных моделей данных• Слишком сложно пользоваться • Фактически необходимы знания о физической

организации• Прикладные системы зависят от этой организации

(логическая и физическая зависимости данных);• Логика построения приложений перегружена деталями

организации доступа к БД

Recommended