Модели данных в процессе проектирования
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Концептуальная модель (модель предметной области)—выражает организацию упорядочивания и обмена представлениями. Она не зависит от СУБД . Любую концептуальн . модель необходимо отобразить в логическую модель , поддерживаемую в конкретной СУБД , а логическую в физическую, т.е. как при проектировании обычных БД.

Обзор моделей данных 

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

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

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

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

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

1 все типы связей должны быть функциональными: 1:1 1:М М:М

2 структура связей должна быть древовидной (графовой)

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

С точки зрения программирования , граф рассматривается как структура , состоящая из меньших деревьев (поддеревьев) , как рекурсивная структура. Рекурсивно дерево определяется как конечное множество Т , состоящее из одного , двух или более узлов, таких , что существует один специально выделенный узел, называемый корнем. Остальные узлы разбиты на n непересекаемых подмножеств Т1...Тn , каждое из которых является деревом.  

Из определения дерева следует , что любой узел дерева –корень некоторого поддерева , принадлежащего полному дереву. Число поддеревьев – степень узла . узел называется концевым, если имеет 0 степень. Иногда концевые узлы называют листьями, а ребра ветвями. Узел не являющийся ни корневым ни концевым , называется узлом ветвления.

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

Таблица1.  Более чем 15-м уровнем вложенности не пользуются.             

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

Графическая диаграмма схемы БД для иерархических БД называется деревом определения .

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

Дуга дерева отношений соответствует групповому отношению. Дуги обычно называют связью исходной – порожденной .

На внутреннем уровне древовидные структуры могут быть представлены различным способом. (пример: отдельные экземпляры структуры м/б представлены как экземпляры записи файла )

Многие иерархические СУБД (реляционные) могут поддерживать несколько различных БД , в этом случае каждая БД на внутреннем уровне представляется одним файлом, который объединяет экземпляры записей одного типа со структурой,

соответствующей схеме этой БД.

Прародитель всех иерархических БД является 1 модель СУБД Ака. Структурными единицами в этой БД являлись: поле, сегмент, физическая связь, логическая связь, физическая БД.

Поле—поименованная наименьшая единица данных. Поле принимает символические и числовые значения. Сегмент—поименованная совокупность полей Физическая/логическая связь—понятия групповых отношений.

Главным сегментом группового отношения объявляется исходный, детальный сегмент—порожденная физическая БД—поименованная совокупнсть экземпляров сегментов и физических связей , образующих иерархическую структуру максимум 15 уровня. Количество сегментов в иерархической БД ограничено числом 255, количество полей 1000. Таблица2.

  

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

СМД базируется на графовой форме представления данных. Вершина графа используется для интерпретации типов сущностей., а дуги – типов связей.

При реализации моделей в различных СУБД , можно применять различные способы представления в памяти системы данных, описывающих связи м/у сущностями.

Доминирующее влияние на развитие СМД в соответствии со стандартами СУБД оказала группа Кодасил (стандарт ISO) Модель Кодасил постоянно развивается , по мере совершенствования вычислительной техники. По мере появления новой версии , появляется новый стандарт.

Типы структур в модели Кодасил.: элемент данных, агрегат, запись, набор, БД. Таблица3.  

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

Допустим структура записей в различных системах БД различны ( в одних—это линейная последовательность полей , в других структурах возможна иерархическая структуризация записей)

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

М/у каждой парой типов записей поддерживается отношение 1:М.

Структуры сетевых БД строятся на основе следующих правил: БД может содержать любое количество типов записей и типов наборов; м/у двумя типами записей м/б определено любое количество типов наборов; тип записи м/б одновременно и владельцем и составным элементом нескольких различных типов наборов.

Основные ограничения сетевой модели с т/з реализации ее, является реализация трех типов отношений : 1:м , 1:1 , М:1. Вводят вспомогательный тип записи для поддержания отношения М:М и две связи 1:М и М:1. Таблица 4.

Системы с разнородными файлами.

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

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

Вход в систему м/б осуществлен только ч/з главные файлы . Различие м/у фалами оговаривается и указывается как при графическом изображении БД , так и при написании на ЯОД .

В сетевых системах с разнородными файлами существуют различия на устранение связей м/у ними. А именно: можно соединить м/у собой файлы разных типов.Табл5

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

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

Реляционная модель данных.

Рмд широко используется при построении БД . Они выступают не только в роли даталогических моделей , непосредственно поддерживающих конкретную СУБД , но и качестве вспомогательных промежуточных моделей при проектировании БД .

Рмд находят активное применение в качестве виртуальных моделей при построении мультиагентных – мульимодельных систем (internet – технологии)

Информационные единицы в реляционной модели : домены, атрибуты, отношения

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

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

Отношения в реляционной модели д/б нормализованы . Существует 5 нормальных форм. Домены не всегда фиксируются в БД в явном виде.

Характерная особенность реляционной модели: связи м/у отношениями устанавливаются не явном виде , а динамически , по равенству значений соответствующих атрибутов.

В реляционной модели каждому объекту предметной области соответствует одно или несколько отношений.

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

Система называется полностью реляционной , если она : 1 поддерживает структурные аспекты реляционной модели ; 2 выполняет соответствующие ей правила включения , коррекции , исключения; 3система обладает подъязыком данных , по меньшей мере таким же мощным как алгебра отношений. Система в которой выполняются 1,2 условия , но не выполняется 3 называются полуреляционными.

Различают бинарные рмд и рмд допускающие отношения произвольных степеней—более известны.

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

Могут широко применятся процедурные языки, которые манипулируют отдельными картежеми отношений.

Пусть существует декартово произведение доменов Д1...Дк его можно представить Д1...Дк=Д1*Д2...Дк , где Д1={a11, a12,...,a1i,...,a1n}...

                                                             Дк={ak1,ak2,...,aki,...,akn}

Они образуют множество кортежей длинны к , состоящих из к-элементов по одному из каждого домена di , имеющего вид: (d1i,d2i...dkik)

Например: Д1={A,2} Д2={B,C} Д3={4,5,D}. Задача: требуется найти декартово произведение доменов. Д=Д1*Д2*Д3={(A,B,4) , (A,B,5), (A,B,D), (A,C,4), (A,C,5), (A,C,D), (2,B,4), (2,B,5), (2,B,D), (2,C,4), (2,C,5), (2,C,D)} 

 Отношение R называется подмножеством декартового произведения Д1...Дк (R->Д1 ,Д2...Дк) Отношение R, определенное на множествах Д1...Дк , есть некоторое множество кортежей арности к, т.е. элементарных отношений являющихся кортежами.

Схема кортежного отношения на доменах. Таблица6.

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

Такие таблицы обладают следующими свойствами : 1 порядок столбцов фиксирован 2 порядок строк безразличен 3 любые 2 строки различаются хотя бы одним элементом 4 строки и столбцы таблицы могут обрабатываться в любой последовательности .

Список имен атрибутов отношений называется схемой отношения.

Если отношение является R и его схема имеет атрибуты А1...Ак , то схема отношения обозначается в БД следующим образом: R(A1,...,Ak)

Существует аналогия м/у схемой отношения и ? , м/у кортежем и записью , м/у отношением и файлом.

Одной из возможных реализаций отношения является файл записи , формат которого соответствует схеме отношения .

Реляционные БД содержат конечное множество отношений экземпляров:

R1(A11,A12,....,A1k1) ,R2(A21,A22,...,A2k2) ,..., Rm(Rm1,Rm2,...Rmk)

Выполнение операций над отношениями.

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

Наиболее важным в ЯМД является раздел формирования запросов . Т.к. запросы в общем случае представляют собой произвольные функции над отношениями , необходимо решить вопрос о требуемой выразительности языка запросов. 

Для этих целей были разработаны 3 абстрактных теоретических языка: 1 реляционная алгебра ;2 реляционное исчисление с переменными кортежами; 3 реляционное исчисление с переменными доменами.

Языки запроса 1-о типа –алгебраические языки . Они позволяют выражать запросы средствами специализированных операторов, применяемых к отношениям.

Языки 2-о и 3-о типов—это языки исчисления, которые позволяют выражать запросы путем спецификации предиката , которому должны удовлетворять требуемые кортежи (домены). Эти языки служат эталоном для оценки существования реальных языковых запросов.

Самым распространенным языком запросов является SQL , разработан Кодасил в 1970 г. Также есть ISBL и QBE (по структуре похожие на SQL)

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

 

Реляционная алгебра.

При определении реляционной алгебры и ее операций предполагается , что порядок столбцов в отношении фиксирован, а сами отношения конечны.

Основные операции:  

1 объединение отношений R=R1uR2. Операция применяется к отношениям той же арности . Таблица 7.      

2 разность отношений R=R1-R2 разностью R1-R2 называется множество кортежей принадлежащих только R1 и не принадлежащих R2  Отношения R1 R2 R д/б одинаковой арности.  

3 декартово произведение отношений R=R1*R2 . Если отношение R1 имеет арность к1, а отношение R2 арности к2 , то декартовым произведением R1*R2 называется множество кортежей арности к1+к2 , причем первые к1 –элемент образуют кортежи из отношения R1, а последние к2 –элементов образованы кортежами из отношения R2. R1*R2à(k1+k2)

4 проекция отношения R1 на компоненты i1,i2,...,ir (R1ài1,...,ir)  Запись: R=п i1,i2, ...,ir (R1) , где i1...ir- номера столбцов отношения R1 . Операция проекции отношения заключается в том ,что из отношения R1 выбираются указанные столбцы и компоненты в указанном порядке.

5 селекция отношения R1 по формуле R , R= d f(R1) , где F –это форма , которая м/б образована а) опероидами , являющиеся номерами столбцов б) логическими операторами : и , или , не . в) арифметическими операторами сравнения.. В формуле м/б использованы скобки .

6 пересечение отношений R=R1 Ç R2 =R1-(R1-R2)

Дата: 2019-05-28, просмотров: 202.