Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

500_Goncharov_S._A._Informatsionnye_tekhnologii_v_mediaindustrii_Upravlenie_dannymi_

.pdf
Скачиваний:
9
Добавлен:
12.11.2022
Размер:
7.41 Mб
Скачать

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

Выше мы рассматривали объекты, не вникая в их сложность. На самом деле различают несколько разновидностей объектов.

Прежде всего, это простые и сложные объекты. Объект называется простым, если он рассматривается как неделимый. Сложный объект представляет собой объединение других объектов, простых или сложных, также отображаемых в информационной системе. Понятие «простой» и «сложный» объект является относительным. В одном рассмотрении объект может считаться простым, а в другом этот же объект может рассматриваться как сложный. Например, объект «ЭВМ» в подсистеме учета материальных ценностей будет рассматриваться как простой объект, а для предприятия, производящего ЭВМ, это будет составной объект (включающий «материнскую плату», «процессор», «оперативная память» и пр.).

Выделяют несколько разновидностей сложных объектов: составные объекты, обобщенные объекты и агрегированные объекты.

Составной объект соответствует отображению отношения «целое— часть». Примерами составных объектов являются ГРУППА– СТУДЕНТ и т. п.

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

Обобщенный объект отражает наличие связи «род – вид» между объектами предметной области. Например, объекты МОНТАЖНИК, СТОЛЯР, СЛЕСАРЬ образуют обобщенный объект РАБОЧИЕ. Объекты, составляющие обобщенный объект, называются его категориями.

Как «родовой» объект, так и “видовые” объекты могут обладать определенным набором свойств. Причем наблюдается так называемое наследование свойств, т. е. “видовой” объект обладает всеми теми свойствами, которыми обладает «родовой» объект, плюс свойствами, присущими только объектам этого вида.

Агрегированные объекты соответствуют обычно какому-либо процессу, в который оказываются «вовлеченными» другие объекты. Например, агрегированный объект «ЗАЩИТА ИНФОРМАЦИИ» объединяет в себе объекты «УГРОЗА», «СРЕДСТВО ЗАЩИТЫ ИНФОРМАЦИИ», а также саму защищаемую «ИНФОРМАЦИЮ». Агрегированный объект может, так же как и простой объект, иметь характеризующие его свойства. В рассматриваемом примере таким свойством может быть размер поставки.

21

Контрольные вопросы к разделу 2

1.Назовите основные требования к инфологической модели.

2.Что такое класс объектов?

3.Что такое единичные свойства объектов?

4.Что такое множественные свойства объектов?

5.Что такое динамические свойства объектов?

6.Что такое составное свойство объектов?

7.Что такое агрегированный объект?

3. Схемы и подсхемы

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

Прежде всего, следует обсудить способ, с помощью которого пользователи БД представляют эти связи.

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

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

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

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

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

4.Описание данных, которое система передает пользователю терминала БД, как можно более близкое к тому описанию данных, которое он использует в своей работе.

Связи этих четырех видов описания данных представлены на рисунке 3.1.

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

22

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

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

Четыре типа связи возможны между двумя наборами элементов А и В. связь А с В может быть простой, а обратная связь – сложной и наоборот, а также обе связи могут быть простыми или сложными. На рисунке 3.1

изображены все эти варианты.

 

 

А ↔ В – один к одному;

А

В – один ко многим;

А

В – многие к одному;

А

В – многие ко многим

Описание данных системным программистом, связанным с вопросами производительности системы.

Описание данных администратором БД, который имеет дело с глобальным описанием данных.

Описание данных ПП – листом

Описание данных для пользователя, который не является специалистом.

Физическая

 

Представлена

организация

 

конкретным

данных

 

размещением данных на

 

 

физических носителях.

 

 

 

Преобразование, выполняемое

 

 

ПО СУБД.

 

 

 

Структура

 

 

хранимых

 

Представлена схемой

данных

 

 

 

 

 

 

 

 

 

Преобразования,

 

 

выполняемые ПО СУБД.

 

 

 

 

 

Логическая

 

 

 

 

организация

 

 

 

Представлена

данных в

 

 

 

прикладной

 

 

 

подсхемой

программе

 

 

 

 

 

 

 

 

 

Преобразование, выполняемое

 

ПП – листами для обеспечения

 

 

 

 

диалогового режима

 

 

 

 

 

Структуры

 

 

 

 

данных,

 

 

 

Представлены

предназначенн

 

 

 

 

средствами диалога

ые для вывода

 

 

 

 

 

на терминал

 

 

 

 

 

 

 

 

 

Рисунок 3.1 – Виды описания данных

23

Основные правила изображения схемы:

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

2.Отмечать идентификаторы записей.

3.Представлять ясно, какие связи являются простыми, а какие – «один ко многим».

4.Связи отличать от перекрестных ссылок.

5.Связи между записями именовать или нумеровать.

6.Не использовать повторяющиеся имена.

Личность

Имя

Дата

Зарплата

служащего

рождения

 

Профессия

Код Должность профессии

Ребенок

Имя ребенка

Возраст

 

 

Домашнее животное

Имя Вид домашнего животного

Рисунок 3.2 – Пример описания схемы

Контрольные вопросы к разделу 3

1.Что такое схема?

2.Что такое подсхема?

3.Назовите основные правила отображения схемы.

24

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

Наиболее простой моделью баз данных является таблица, которая описывается как двумерный (плоский) файл.

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

Дерево представляет собой иерархию элементов, называемых узлами. На самом верхнем уровне иерархии имеется только один узел – корень.

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

Дерево может быть определено как иерархия узлов с двойными связями, такими что:

1)самый верхний уровень иерархии имеет один узел, называемый корнем;

2)все узлы, кроме корня, связываются с одним и только одним узлом на более высоком уровне по отношению к ним самим.

Узел степени 4

Корень

 

(выходит 4

Порожденные

Лист второго

элементы

вершины)

уровня

 

 

 

 

 

 

1

 

 

 

 

 

Семейство

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

размерности 6

 

 

2

 

 

3

4

 

 

5

6

7

8

9

10

11

12

13

14

15

16

17

 

18

19

Диаграмма

 

20

21

22

 

 

Уровень 4

 

 

 

 

 

 

 

 

насчитывает 5

 

 

 

 

 

 

 

 

 

 

max пути

элементов

Листья

Диаграмма пути (глубина 3)

Рисунок 4.1 – Пример структуры «дерево»

25

Диаграмма дерева имеет высоту 4(число уровней), момент 22 (число узлов), вес 16 (число листьев), основание 1 (число корней).

Сбалансированное дерево – дерево, в котором каждый узел имеет одинаковое число ветвей, причем процесс включения новых ветвей в узлы дерева идет сверху вниз, а на каждом уровне дерева – слева направо. На рисунке 4.2 приведены примеры сбалансированных и несбалансированных деревьев.

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

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

Сбалансированное дерево

Несбалансированные деревья

Рисунок 4.2 – Примеры сбалансированных и несбалансированных деревьев

26

Схема:

Основная запись Экземпляр схемы: клиента банка

Фамилия

баланс

 

572048

Петров

3 050 568 руб.

 

 

 

 

 

 

 

Детальная запись

 

Сделка 1

 

Сделка 2

 

Сделка 3

 

 

 

 

 

 

 

Рисунок 4.3 – Пример иерархического файла

Иерархическим файлом называется файл, в котором записи связаны в виде древовидной структуры. На рисунке 4.3 приведен файл типа «основная запись – детальная запись», представляющая собой общий вид иерархического файла с двумя типами записей.

Однородные структуры – структуры, у которых каждый узел дерева может быть представлен одним и тем же типом записи.

Контрольные вопросы к разделу 4

1.Что такое деревья?

2.Что такое исходный узел дерева?

3.Что такое порожденный узел дерева?

4.Что такое корень дерева?

5.Что такое уровень дерева?

6.Что такое сбалансированное дерево?

7.Что такое диаграмма пути дерева?

5.Сетевые структуры

Если порожденный элемент в отношении между данными имеет более одного исходного элемента, то это отношение описывают в виде сетевой структуры.

Любой элемент в сетевой структуре может быть связан с любым другим элементом. На рисунке 5.1 приведены примеры сетевых структур.

27

1

1

4

1

2

3

2

2

3

 

 

 

3

4

5

Рисунок 5.1 – Сетевые структуры

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

Структура на одной из линий схемы, которой сдвоенные стрелки, указывающие в разные стороны, называется сложной сетевой структурой, а схему, в которой ни на одной из линий нет сдвоенных стрелок, в обоих направлениях – простой сетевой структурой. На рисунке 5.2 показана простая сетевая структура.

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

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

Ситуация, в которой предшественник узла является в то же время его последователем, называются циклом. Отношения исходный – порожденный образуют при этом замкнутый контур. Например, завод выпускает различную продукцию. Некоторые изделия производятся на других заводах. С одним контрактом может быть связано производство нескольких изделий.

Поставщик

 

Услуга

 

 

 

Расценка

 

Заказ на услугу

 

 

 

Оказание услуг

Рисунок 5.2 – Простая сетевая структура

28

Поставщик

 

Поставщик А

 

Поставщик В

 

Поставщик С

 

 

 

 

 

 

 

Услуга

 

Доступ в

 

Кабельное

 

Услуги

 

Предостав -

 

 

сеть

 

телевидение

 

телефонии

 

ление

 

 

Интернет

 

 

 

 

 

хостинга

 

 

 

 

 

 

 

 

 

Рисунок 5.3 – Сложная сетевая структура

Представление этих отношений и образует цикл. Но не все СУБД способны представлять циклы. Специальным типом цикла является цикл, состоящий из одного только типа записи, то есть тип порожденной записи совпадает с типом исходной записи. Эта ситуация называется петлей.

Представление однородного дерева простой схемой с петлями

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

Любую простую сетевую структуру можно представить с помощью дерева или множества деревьев с избыточными элементами. Каждое отношение со сложными связями в обоих направлениях должно быть заменено двумя древовидными структурами. Дублирование блоков не вызовет избыточности на уровне физического хранения данных (рисунок 5.4).

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

 

1

=

1

1

 

 

1

2

3

2

3

=

 

2 2 3

4

5

6

4

5

5

6

3 3

Рисунок 5.4 – Преобразование древовидной структуры в сетевую

29

Контрольные вопросы к разделу 5

1.Что такое сетевая структура?

2.Что такое цикл?

3.Как можно упростить сетевую структуру?

6. Реляционные БД

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

Впринципе, требуется найти такой способ описания данных, который:

1)понятен пользователю, не имеющему особых навыков в программировании;

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

3)допускает максимальную гибкость при формировании непредсказуемых или случайных запросов с терминалов.

Один из самых естественных способов представления данных для

пользователя непрограммиста – это двумерная таблица. Она привычна для пользователя, понятна и обозрима, ее легко запомнить. Поскольку любая сетевая структура может быть разложена в совокупность древовидных структур (рисунок 5.4), то и любое представление данных может быть сведено к двумерным плоским файлам (тоже с некоторой избыточностью). Этот процесс представления данных в форме двумерных таблиц, выполняемый шаг за шагом для каждого отношения между данными в базе, называется нормализацией. Таблицы могут быть построены таким образом, что не будет утеряна информация об отношениях между элементами данных. Рассматриваемая таблица – это прямоугольные массивы, которые можно описать математически. Таблица обладает следующими свойствами:

1)каждый элемент таблицы представляет собой один элемент данных, повторяющиеся группы отсутствуют;

2)все столбцы в таблице однородные, то есть элементы столбца имеют одинаковую природу;

3)столбцам однозначно присвоены имена;

4)в таблице нет двух одинаковых строк;

5)в операциях с такой таблицей ее строки и столбцы могут просматриваться в любом порядке и в любой последовательности безотносительно к их

информационному содержанию и смыслу.

Таблица такого вида, как на рисунке 6.1, называется отношением. БД, построенная с помощью отношений, называются реляционной БД.

30