Для реализации данной модели на физическом уровне используется ряд стандартных методов размещения данных на запоминающих устройствах, которые могут размещать сегменты следующими иерархическими способами доступа: последовательный, индексно-последовательный, прямой, индексно-прямой. В соответствии со способами размещения сегментов устанавливается порядок доступа к ним. Установленный порядок доступа к сегментам обуславливает процедурность языка запросов и требует от пользователя знания путей доступа к данным, проходящим по ветвям дерева иерархической записи. Что является одним из недостатков данной модели. В качестве других недостатков можно отметить следующие:
¨ Сложность реализации “многие ко многим”, требующая избыточности данных на физическом уровне, что приведет к нежелательному и не оправданному увеличению БД;
¨ требование повышенной корректности к операции удаления, поскольку удаление исходного сегмента влечет за собой удаление порожденных;
¨ доступ к любому порожденному сегменту возможен только через исходный, что увеличивает время ответа а запрос к БД.
В связи с тем, что иерархическая модель обладает большим количеством недостатков она не будет применятся для моделирования разрабатываемой АСИС.
Сеть [5] – более общая структура в сравнении с иерархией. Узлами сети являются отдельные экземпляры записи. Узлы записи являются единицей доступа к БД. Поскольку отдельный узел может иметь несколько непосредственно старших узлов, так же, как и несколько непосредственно подчиненных, то данная структура обеспечивает прямое представление отношения “многие ко многим”. Для связи между записями-узлами существует связующая запись, все экземпляры которой помещаются в цепочку для связи двух экземпляров.
Основной конструкцией сетевой модели данных является набор. Для каждого типа набора, определяемого в схеме, должен быть указан определенный тип записи владельца набора, а так же произвольное число типов записи членов набора. Каждый экземпляр набора состоит из одного экземпляра-владельца и одного или более экземпляров записей-членов.
Каждый экземпляр записи-набора представляет иерархические связи между экземпляром записи-владельца и соответствующими экземплярами записей-членов. Это является следствием того ограничения, что ни один экземпляр записи-члена из набора на может принадлежать более, чем одному экземпляру набора. Способ, которым каждый экземпляр записи владельца связывается с соответствующими экземплярами записей-членов, определяется в схеме сети. Одним из способов организации таких связей является установление цепочки указателей, выходящих из экземпляра записи-владельца, проходящих через все экземпляры записей-членов и возвращающихся обратно к экземпляру записи-владельца, что обеспечивает высокую скорость обработки запросов.
Главный недостаток сетевой модели заключается в сложности структур памяти. Пользователь должен знать, какие цепочки существуют и какие отсутствуют. В результате язык запросов процедурный и требует программистских навыков.
2.2.3 Реляционная модель данных.
Реляционная модель – множественное отношение которое представляет собой подмножество декартова произведения списка доменов [27,20]. Домен – это множество значений, из которого извлекаются значения для данного атрибута. Другими словами в основе реляционной модели лежат простые таблицы, которые удовлетворяют определенным ограничениям, а потому могут рассматриваться как математические отношения. Строки таких таблиц называются кортежами, имена столбцов – атрибутами. Следует отметить, что все кортежи различны, а порядок столбцов произволен, чем упрощается процесс обработки кортежей. В отношении (таблице) выделяется несколько атрибутов, однозначно идентифицирующих кортежи и называемых ключами.
Особенность реляционной модели заключается в том, что в отличии от сетевой и иерархической моделей реальные объекты и взаимосвязи между ними представляются в базе данных единообразно в виде нормализованных отношений [24].
Основной недостаток реляционной модели данных связывается с низкой производительностью реляционной СУБД. Но разработка современных СУБД таких как, ORACLE, InterBase, Acsses и др. позволило преодолеть и этот недостаток.
Достоинства реляционной модели можно разделить на две группы:
1) достоинства для пользователя:
¨ реляционная БД представляет собой набор таблиц с которыми пользователь привык работать;
¨ не нужно помнить пути доступа к данным и строить алгоритмы и процедуры обработки своего запроса;
¨ реляционные языки легки для изучения и освоения, в то время как языки общения с иерархической и сетевой моделями предназначены для программистов и мало пригодны для пользователей;
2) достоинства обработки данных реляционной БД:
¨ связность. Реляционное представление дает ясную картину взаимосвязей атрибутов из различных отношений;
¨ точность. Направленные связи в реляционной БД отсутствуют. Отношения по своей природе обладают более точным смыслом и поддаются манипулированию с использованием таких средств, как алгебра и исчисление отношений [5], обеспечивающих наглядность и гибкость модели данных;
¨ гибкость. Операции проекции и объединения [17] позволяют разрезать и склеивать отношения, так что программист может получать разнообразные файлы в нужной форме;
¨ секретность. Контроль секретности упрощается. Для каждого отношения имеется возможность задания правомерности доступа, засекреченные показатели можно выделить в отдельные отношения с проверкой прав доступа.
¨ Простота внедрения. Физическое размещение однородных (табличных) файлов намного проще, чем размещение иерархических и сетевых структур.
¨ Независимость данных. БД должна допускать возможность расширения, т.е. добавления новых атрибутов и отношений.
Вывод: поскольку среди перечисленных логических моделей данных реляционная обладает значительными преимуществами и малыми недостатками, то она и будет взята в основу для построения СУБД.
2.3 Выбор концептуальной модели.
Для выбора концептуальной модели данных рассмотрим три их разновидности:
¨ Семантическая модель;
¨ Фреймы;
¨ Модель “сущность-связь”.
Семантическая модель основывается на построении семантической сети. Под семантической сетью понимают ориентированный граф, состоящий из помеченных вершин и дуг и задающий объекты и отношения предметной области. Семантические сети обладают рядом достоинств, а именно:
¨ Описание объектов предметной области происходит естественным языком;
¨ Все записи, поступающие в БД накапливаются в относительно однородной структуре.
Но несмотря на эти преимущества, семантическая модель данных обладает рядом недостатков, один из которых и наиболее существенный, заключается в том, что построение реляционной модели данных на основе семантических сетей затруднено.
Фреймы выражаются структурами данных с привязанными процедурами обработки этих данных. Фреймы могут быть следующих видов: событийные, характеристики, логические предикаты. Использование фреймовой модели так же нецелесообразно, поскольку данная модель не отражает типы связей [14] в реляционной модели данных.
Модель “сущность-связь” описывается в терминах сущность, связь, значение. Сущность – понятие которое может быть идентифицировано. Связь – соединение сущностей. Для представления связей и сущностей введен специальный метод: ER-диаграма [27]. Различаются сущности трех основных классов: стержневые, ассоциативные и характеристические. Стержневая сущность – это независимая сущность (ей свойственно независимое существование). Ассоциативная сущность или ассоциация рассматривается как связь между двумя или более сущностями типа "многие -ко- многим" или подобные им. Характеристическая сущность (или характеристика) представляет собой сущность, единственная цель которой, в рамках рассматриваемой предметной области, состоит в описании или уточнении некоторой другой сущности. ER-диаграма – графическое представление взаимосвязей сущностей. Каждое множество сущностей представляется прямоугольником, а множество связей – ромбом. Связи могут быть трех типов: “один к одному”, “один ко многим”, “многие ко многим”. данные типы связи присущи реляционной модели, как и сущности, которым в реляционной модели соответствуют таблицы.
Вывод: в связи с тем, что модель “сущность-связь” наиболее близка по принципам организации к реляционной модели и реализация последней на основе первой наиболее удобна, то в качестве концептуальной модели выбрана модель “сущность-связь”.