29.Информационные модели данных: реляционные, иерархические, сетевые. Последовательность создания информационной модели. Взаимосвязи в модели.
Ядром любой базы данных является модель данных. С помощью модели данных могут быть представлены объекты предметной области и взаимосвязи между ними.
Модель данных — это совокупность структур данных и операций их обработки. Рассмотрим три основных типа моделей данных: иерархическую, сетевую и реляционную.
Иерархическая модель представляет собой совокупность элементов, расположенных в порядке их подчинения от общего к частному и образующих перевернутое по структуре дерево (граф).
К основным понятиям иерархической структуры относятся уровень, узел и связь. Узел — это совокупность атрибутов данных, описывающих некоторый объект. На схеме иерархического дерева узлы представляются вершинами графа. Каждый узел на более низком уровне связан только с одним узлом, находящимся на более высоком уровне. Иерархическое дерево имеет только одну вершину, не подчиненную никакой другой вершине и находящуюся на самом верхнем — первом уровне. Зависимые (подчиненные) узлы находятся на втором, третьем и т. д. уровнях. Количество деревьев в базе данных определяется числом корневых записей. К каждой записи базы данных существует только один иерархический путь от корневой записи.
В сетевой структуре при тех же основных понятиях (уровень, узел, связь) каждый элемент может быть связан с любым другим элементом.
Реляционная модель данных объекты и связи между ними представляет в виде таблиц, при этом связи тоже рассматриваются как объекты. Все строки, составляющие таблицу в реляционной базе данных, должны иметь первичный ключ. Все современные средства СУБД поддерживают реляционную модель данных.
Эта модель характеризуются простотой структуры данных, удобным для пользователя табличным представлением и возможностью использования формального аппарата алгебры отношений и реляционного исчисления для обработки данных.
Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:
1. Каждый элемент таблицы соответствует одному элементу данных.
2. Все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип и длину.
3. Каждый столбец имеет уникальное имя.
4. Одинаковые строки в таблице отсутствуют;
5. Порядок следования строк и столбцов может быть произвольным.
Объектами обработки СУБД являются следующие информационные единицы.
Поле — элементарная единица логической организации данных, которая соответствует неделимой единице информации — реквизиту.
Запись — совокупность логически связанных полей.
Экземпляр записи — отдельная реализация записи, содержащая конкретные значения ее полей.
Таблица — упорядоченная структура, состоящая из конечного набора однотипных записей.
Первичный ключ — поле или группа полей, позволяющие однозначным образом определить каждую строку в таблице. Первичный ключ должен обладать двумя свойствами:
- Однозначная идентификация записи: запись должна однозначно определяться значением ключа.
- Отсутствие избыточности: никакое поле нельзя удалить из ключа, не нарушая при этом свойства однозначной идентификации.
Кроме первичного, могут использоваться так называемые простые (или вторичные) ключи таблицы. Простых ключей может быть множество. Они используются при упорядочивании (индексировании) таблиц. Связь между таблицами устанавливает отношения между совпадающими значениями в ключевых полях, обычно между полями разных таблиц, имеющими одинаковые имена. В большинстве случаев с «ключом» одной таблицы, являющимся уникальным идентификатором каждой записи, связывается «внешний ключ» другой таблицы. Типы межтабличных связей: один к одному, один ко многим, и многие ко многим. Связь с отношением «один-ко-многим» является наиболее часто используемым типом связи между таблицами. В такой связи каждой записи в таблице «A» могут соответствовать несколько записей в таблице «B», а запись в таблице «B» не может иметь более одной соответствующей ей записи в таблице «A». При отношении «многие-ко-многим» одной записи в таблице «A» могут соответствовать несколько записей в таблице «B», а одной записи в таблице «B» несколько записей в таблице «A». Такая схема реализуется только с помощью третьей (связующей) таблицы, ключ которой состоит из по крайней мере двух полей ѕ которые являются полями внешнего ключа в таблицах «A» и «B». При отношении «один-к-одному» запись в таблице «A» может иметь не более одной связанной записи в таблице «B» и наоборот. Этот тип связи используют не очень часто, поскольку такие данные могут быть помещены в одну таблицу. Связь с отношением «один-к-одному» используют для разделения очень широких таблиц, для отделения части таблицы по соображениям защиты, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице. Для предполагаемого объекта проектирования должна быть составлена информационная модель, содержащая:
- И–ИЛИ дерево, описывающее множество возможных решений (построение иерархической модели);
- Список требований, описывающий множество показателей, на основе которых формулируются задания на проектирование (формулировка системы требований);
- Модель оценки решения в виде матрицы соответствий элементов решения предъявляемым требованиям (построение матрицы соответствий).
Рисунок 1 — Структура информационной модели. Совокупность И–ИЛИ дерева, списка требований и системы оценок «Висячих вершин» дерева по требованиям представляет собой законченную информационную модель (рисунок 1) и может экспортироваться из системы для передачи пользователю (заказчику). Корректно построенная информационная модель имеет самостоятельную ценность и может применяться пользователями, которые не являются экспертами в данной предметной области. Первым шагом разработки информационной модели является построение иерархической модели предметной области в виде И–ИЛИ дерева. Модель предметной области строится на основе анализа классификационной системы существующих технических и управленческих решений, апробированных технологий, известных структур. В большинстве практических задач И–ИЛИ дерево имеет весьма сложную структуру и включает в себя не менее трех уровней иерархии. По сути, иерархия структурирует представления системного аналитика (или экспертов) об основных закономерностях функционирования или существования предметной области. Рисунок 1 — Фрагмент И–ИЛИ дерева. На рисунке 1 показан фрагмент И–ИЛИ дерева соответствующий предметной области «Прикладное социологическое исследование». В терминах И–ИЛИ ССР (системы синтеза решений) «требования» аналогичны критериям, по которым оценивается качество технического или управленческого решения. Система требований строится таким образом, чтобы достаточным образом описать возможные основания для предпочтения того или иного конкретного решения перед другими. В И–ИЛИ ССР существует возможность задавать требования, представленные в следующих видах шкал:
- Шкала наименований (классификационная или номинальная шкала), на которой определено отношение эквивалентности (принадлежности к классу). Примером требования, измеренного в номинальной шкале для предметной области «Прикладное социологическое исследование» является признак «Сфера применения» (шкальные значения — «Политические исследования», «Социально–психологические исследования», «Маркетинговые исследования» и т.д.);
- Порядковая (ординальная, ранговая) шкала, на которой определены отношения вида «больше» или «больше или равно». Примером требования, представленного в шкале отношений, является требование «Стоимость исследования» (шкальные значения от «Очень низкая» до «Очень высокая»);
- Интервальная шкала, для которой допустимыми являются положительные линейные преобразования. Примером признака, представленного в интервальной шкале, может являться «год рождения (создания, разработки)»;
- Шкала отношений, для которой допустимыми являются преобразования подобия. В качестве примеров признаков, представленных в шкалах отношений, могут рассматриваться стоимость исследования (в рублях), срок исследования (в месяцах), погрешность результатов (в процентах), охват аудитории (в тыс. человек или в процентах).
Очевидно, наиболее удобными в работе являются шкалы отношений. К сожалению, далеко не всегда при решении практических задач удается свести используемые требования к такому типу шкалы. Матрица соответствий содержит оценки висячих вершин дерева решений по введенным требованиям (строки матрицы соответствуют висячим вершинам дерева решений, столбцы – предъявляемым требованиям). По сути, матрица соответствий является основным элементом системы и определяет качество предлагаемых системой решений. От того, насколько полной и точной является информация, содержащаяся в матрице соответствий, зависит эффективность работы И–ИЛИ ССР в режиме синтеза решений. Заполнение матрицы соответствий является последним шагом в описании предметной области.