Описание предметной области. По отношению к пользователям принято использовать трехуровневое представление для описания предметной области (рис

 

По отношению к пользователям принято использовать трехуровневое представление для описания предметной области (рис. 7.12): концептуальное, логическое и физическое (внутрен­нее).

Концептуальный уровень связан с частным представлением данных группы пользователей, использующих одну и ту же информацию, в виде внешней схемы. Каждый конкретный пользователь работает с частью БД и представляет ее в виде внешней модели. Характеризуется разнообразием используемых моделей (модель «сущность — связь»: ER-модель, модель Чена, бинарные и инфологические модели, семантические сети). На рис. 7.13 представлен фрагмент предметной базы данных «сбыт» и одно из возможных его концептуальных представлений, ко­торое отражает не только объекты и их свойства, но и взаимо­связи между ними.

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

 

 

 

Рис. 7.12. Описания предметной области

 

 

 

Рис. 7.13. Фрагмент предметной базы данных «Сбыт» и одно из возможных его концептуальных представлений

 

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

иерархическая модель является разновидностью сетевой, являющейся совокупностью деревьев (лесом);

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

Представление предметной базы данных «Сбыт» на логиче­ском уровне для различных моделей показано на рис. 2.14.

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

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

 

 

Рис. 7.14. Представление предметной базы данных «Сбыт» на ло­гическом уровне для различных моделей

 

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

Объектно-ориентированное программирование методология программирования, основанная на представлении программ в виде связанной совокупности объектов, каждый из которых является экземпляром определенного класса, а классы образу­ют иерархию по наследованию.

Для упрощения процесса перехода к ООБД была создана объектно-реляционная модель данных, имеющая две разновид­ности — гибридную и расширенную.

Объектно-реляционная модель (ОРБД) является промежу­точной между реляционными и объектно-ориентированными базами данных. Ее появление вызвано двумя причинами:

сложностью построения новой модели данных «с листа». Удобнее это делать на основе имеющихся проверенных разра­боток;

— учетом преемственности с широко используемыми реляци­онными моделями, которые нельзя мгновенно заменить на объектно-ориентированные БД.

Различают две разновидности ОРБД — гибридные и рас­ширенные модели.

В гибридных моделях [3, 4, 36] интерфейс пользователя и алгоритм приложения выполнены с учетом объектно-ориенти­рованного подхода, тогда как собственно БД является реляци­онной. Примерами могут служить СУБД Paradox и InterBase в рамках программного продукта Delphi. В каком-то смысле гибридной можно считать СУБД Access при использова­нии языка программирования Visual Basic Fot Application (VBA).

В расширенных (постреляционных) моделях предполагается объектно-ориентированное построение собственно базы данных путем использования известных и введения новых типов данных, связанных между собой. Эта связь чаще всего осуществляется созданием методов с помощью триггеров и хранимых процедур. В расширенной объектно-реляционной модели [3, 4, 36] допу­скается, в отличие от реляционной модели данных, неатомар­ность данных в поле. В таких полях может располагаться другая таблица или массив. К подобным СУБД относятся Informix Universal Server, Oracle, UniSQL.

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

Физический (внутренний) уровень связан со способом фак­тического хранения данных в физической памяти ЭВМ и во многом определяется конкретным методом управления. Основ­ными компонентами физического уровня являются хранимые записи, объединяемые в блоки; указатели, необходимые для поиска данных; данные переполнения; промежутки между бло­ками; служебная информация.

Классифицировать БД можно по нескольким характерным признакам:

-способу хранения информации (интегрированные, распре­деленные);

- типу пользователя (монопользовательские, многопользова­тельские);

- характеру использования данных (прикладные, предмет­ные).

Таблица 7.2. Сравнительная характеристика моделей БД

Вид модели Достоинства Недостатки
Иерархическая Простота понимания. Высокое быстродействие при совпадении структур базы данных и запроса Отношения М : М могут быть реализованы только искусственно. Могут быть избыточные данные. Усложняются операции включения и удаления. Удаление исходных сегментов приводит к удалению порожденных сегментов. Процедурный характер построения структуры БД и манипулирования данными. Доступ к любому порожденному сегменту возможен только через корневой сегмент. Сильная зависимость логической и физической моделей. Ограниченный набор структур запроса. Невозможность реализации таблиц с нелинейной структурой
Сетевая Сохранение информации при уничтожении записи-владельца. Более богатая структура запросов. Меньшая зависимость между логической и физической моделями. Возможность реализации таблиц с нелинейной структурой Отношения М : М могут быть реализованы только искусственно. Программист должен знать логическую структуру БД. Процедурный характер построения структуры БД и манипулирования данными. Возможна потеря независимости данных при реорганизации БД
Реляционная Произвольная структура запроса. Простота работы и отражения представле­ний пользователя. Отделение физической модели от логической и логической от концептуальной. Хорошая теоретиче­ская проработка Отношения М : М могут быть реализованы только искусственно. Необходима нормализация данных. Возможны логические ошиб­ки при нормализации и реа­лизации. Невозможна реализация таб­лиц с нелинейной структурой
Объектно-ориентированная Неограниченный набор типов данных. Возможна реализация таблиц с нелинейной структурой. Послойное представле­ние данных. Высокая скорость ра­боты из-за отсутствия ключа. Ненужность нормали­зации. Легкая расширяемость структуры и ее гиб­кость. Повторное использо­вание типов данных и компонент. Реализация отношений М:М Сложность освоения модели из-за сложности структуры БД. Нечеткий язык программиро­вания. Недостаточная защита дан­ных. Нечетко проработанный одно­временный доступ. Плохая обозримость струк­туры