Трехуровневая (трехзвенная) архитектура (Интернет-архитектура)
Доступ к базе данных и СУБД (расположенным на одном компьютере или в сети) осуществляется из браузера по стандартному протоколу. Это предъявляет минимальные требования к клиентскому оборудованию. Клиентская часть ("тонкий клиент"), взаимодействующая с пользователем, представляет собой HTML-страницу в Web-браузере либо Windows-приложение, взаимодействующее с Web-сервисами. Такие программы называют «тонкими клиентами», потому что они способны работать даже на ПК с процессором 80386.
Вся программная логика вынесена на сервер приложений, который обеспечивает формирование запросов к базе данных, передаваемых на выполнение серверу баз данных. Сервер приложений может быть Web-сервером или специализированной программой (например, Oracle Forms Server) (см. рис. 10).
Благодаря стандартизации всех протоколов и интерфейсов взаимодействия в Интернете такие системы легко создавать и внедрять. Например, можно не организовывать локальную сеть, а обращаться к серверу через Интернет или использовать протоколы Интернет в локальной сети (в таком случае говорят о технологии интранет). В этом случае не требуется разрабатывать специальные клиентские программы и придумывать собственные спецификации обмена данными между сервером и клиентскими местами. Достаточно использовать готовые браузеры и программные решения.
Рисунок 10. Схема работы с БД в трехуровневой архитектуре
Модели баз данных
Организация данных и способы доступа к ним, обеспечиваемые конкретной СУБД, называются моделью данных.
Существующие базы данных разработаны на основе иерархической, сетевой, реляционной, многомерной и объектно-ориентированной моделей данных или их подмножеств.
Иерархические базы данных
В основе данной модели - иерархическая модель данных. В этой модели имеется один главный объект и остальные - подчиненные - объекты, находящиеся на разных уровнях иерархии. Взаимосвязи объектов образуют иерархическое дерево с одним корневым объектом.
Иерархическая БД состоит из упорядоченного набора нескольких экземпляров одного типа дерева. Автоматически поддерживается целостность ссылок между предками и потомками. Основное правило: никакой потомок не может существовать без своего родителя (см. рис. 11).
Рис. 11. Схема иерархической модели данных
Пример иерархической архитектуры БД
Сетевые базы данных
Сетевой подход к организации данных является расширением иерархического. В иерархических структурах запись-потомок должна иметь в точности одного предка; в сетевой структуре данных потомок может иметь любое число предков.
В сетевой модели данных любой объект может быть одновременно и главным, и подчиненным, и может участвовать в образовании любого числа взаимосвязей с другими объектами. Сетевая БД состоит из набора записей и набора связей между этими записями, а если говорить более точно - из набора экземпляров каждого типа из заданного в схеме БД набора типов записи и набора экземпляров каждого типа из заданного набора типов связи (см. рис. 12).
Рисунок 12. Схема сетевой модели
Пример сетевой модели БДПримером сложной сетевой структуры может служить структура базы данных, содержащей сведения о студентах, участвующих в научно-исследовательских работах (НИРС). Возможно участие одного студента в нескольких НИРС, а также участие нескольких студентов в разработке одной НИРС.
Реляционные системы
Реляционная модель данных положена в основу большинства современных СУБД. Достоинствами модели являются простота размещения данных и удобство их интерпретации.
Реляционная модель ориентирована на организацию данных в виде таблиц (отношений).
Таблица базы данных (table) - регулярная структура, которая состоит из однотипных строк (записей, records), разбитых на столбцы (поля, fields).
В теории реляционных баз данных синоним таблицы - отношение (relation), в котором строка называется кортежем, а столбец называется атрибутом.
Рисунок 13. Реляционная модель
Пример реляционной БД