
- •Конспект лекций
- •Раздел «бд. Субд. Основные понятия» 8
- •2. Жизненный цикл баз данных
- •3 Эксплуатационные характеристики базы данных
- •Раздел «бд. Субд. Основные понятия»
- •4. Управление параллельным доступом.
- •Раздел «бд. Субд. Основные понятия» Лекция №3 Место баз данных в архитектуре ис
- •1 Локальные ис
- •2 Ис в файл-серверной архитектуре
- •3 Ис в клиент-серверной архитектуре
- •4 Двухзвенные модели архитектуры
- •5 Трехзвенные модели
- •6 Монитор транзакций
- •7 Ис в Internet и intranet
- •Раздел «Концептуальный уровень проектирования бд» Лекция №4 Концептуальная модель данных. Сущности, атрибуты, ключи
- •1 Основные понятия
- •2 Задачи моделирования данных
- •3 Сущности
- •4 Атрибуты
- •5 Ключи
- •Раздел «Концептуальный уровень проектирования бд» Лекция №5 Концептуальная модель данных. Связи. Классы и подклассы. Концептуальная схема
- •1 Связи
- •2 Классы и подклассы
- •3 Источники данных для концептуального проектирования
- •4 Построение концептуальной схемы
- •5 Анализ концептуальной модели
- •Раздел «Логический уровень проектирования бд»
- •3.3 Реляционная модель
- •3.4 Объектно-реляционная модель
- •3.5 Объектно-ориентированная модель данных
- •3.6 Модель данных на основе xml
- •Раздел «Реляционная теория бд» Лекция №7 Реляционная модель данных. Основные понятия
- •1 Словарь терминов
- •2 Целостность реляционной модели
- •3 Математическое описание реляционной модели
- •Раздел «Реляционная теория бд» Лекция №8 Реляционная алгебра и реляционное исчисление
- •1 Реляционная алгебра. Теоретико-множественные операции
- •2 Реляционная алгебра. Специальные реляционные операции
- •3 Дополнительные реляционные операции
- •4 Примеры записи запросов
- •5 Реляционное исчисление
- •Раздел «Реляционная теория бд» Лекция №9 Нормализация реляционной модели. Функциональные зависимости
- •1 Что такое нормализация?
- •2 Функциональная зависимость
- •3 Теоремы о функциональных зависимостях
- •5 Алгоритм нормализации отношений. Метод декомпозиции
- •6 Другие нормальные формы
- •Раздел «Реляционная теория бд»
- •1.2 Связь частичная для одной из сущностей
- •1.3 Связь частичная для обеих сущностей
- •2 Реализация бинарной связи 1:m («один-ко-многим»)
- •2.1 Связь обязательная для m-связной сущности
- •2.2 Связь частичная для m-связной сущности
- •3 Бинарная связь n:m («многие-ко-многим»)
- •4 Связи более высокого порядка (n-арные)
- •5 Классы и подклассы
- •Раздел «Реляционная теория бд» Лекция №12 Стандарт idef1x
- •1 Стандарты моделирования данных
- •2 Основные понятия стандарта idef1x
- •3 Графический язык idef1x
- •Раздел «Физический уровень проектирования бд» Лекция №13 Физическая модель данных
- •1 Исходные данные для физического проектирования
- •2 Возможная методика перехода к физической модели на примере реляционной модели
- •2.1 Преобразование отношений в таблицы
- •2.2 Преобразование атрибутов в поля (столбцы) таблиц
- •2.3 Преобразование доменов в типы данных
- •2.4 Первичные ключи
- •2.5 Порядок расположения столбцов
- •2.6 Создание ссылочных ограничений
- •3 Факторы, влияющие на производительность бд
- •3.1 Индексы
- •3.2 Денормализация
- •Раздел «Язык sql» Лекция №14 Введение в язык sql. Команда Select
- •1 Стандарты
- •2 Возможности sql
- •3 Запросы на выборку данных
- •4 Примеры запросов
- •Раздел «Язык sql» Лекция №15 Команды определения данных
- •1 Команда create table
- •2 Команда alter table
- •3 Поддержка ограничений целостности
- •4. Редактирование записей в таблице
- •Раздел «Язык sql» Лекция №16 Дополнительные аспекты реляционной технологии
- •1 Проблемы, требующие решения
- •2 Запросы
- •3 Представления
- •4 Курсоры
- •5 Хранимые процедуры
- •6 Триггеры
- •7 Функции, определяемые пользователем
- •8 Транзакции
5 Трехзвенные модели
В трехзвенной модели каждая функция реализована на отдельном компьютере. Данную архитектуру иногда называют моделью сервера приложений или AS (Application Server). Простейший вариант модели приведен на рисунке 2.
Рисунок 2 – Трёхзвенная модель
Между серверами каждого уровня могут быть достаточно сложные схемы взаимодействия, например, когда один объект является одновременно и сервером и клиентом для другого сервера.
6 Монитор транзакций
В сложных моделях, например, AS, требуется рационально организовать выполнение транзакций.
Под транзакцией будем понимать действия над данными в БД, передачу сообщений, запись информации в файл, опрос датчиков и т.д.
На рисунке 3 представлена модель обработки транзакций X/Open DTP (Distributed Transaction Processing) – обработка распределенных транзакций.
В качестве прикладной программы рассматривается любая программа.
Под ресурсом понимается ресурс любого вида. Если ресурсом является БД, то менеджер ресурса – это сервер БД.
Интерфейс ATMI (Application Transaction Monitor Interface – прикладной интерфейс монитора транзакций) используется для вызова функций TPM (Transaction Processing Monitor) на некотором языке программирования, например, на С.
Рисунок 3 – Монитор транзакций
Связь между менеджерами ресурсов и транзакций осуществляется на основании протокола двухфазной фиксации транзакций (стандарт X/Open XA) (Oracle, Ingres, Informix).
Полезно знать следующее: транзакции, поддерживающие TPM, часто называются прикладными или бизнес-транзакциями.
Использование монитора транзакций имеет ряд достоинств по сравнению с другими технологиями:
- повышается пропускная способность сети;
- облегчается администрирование;
- ускоряется разработка приложений.
На рынке предлагается ряд мониторов транзакций, например, ACSM, CICS, TUXEDO System и др.
7 Ис в Internet и intranet
Рассмотрим модели доступа к Internet.
Модель доступа со стороны сервера (рисунок 4).
Рисунок 4 - Модель доступа в Internet со стороны сервера
Web – сервер вызывает внешние по отношению к программам Web – сервера программы в соответствии с одним из интерфейсов:
CGI (Common Gateway Interface – общий шлюзовой интерфейс);
Fast CGI;
API (Application Program Interface).
Внешние программы взаимодействуют с сервером БД на языке SQL, непосредственно обращаясь к серверу или через ODBC (Open Database Connectivity - совместимость открытых баз данных – прикладной интерфейс для связи с базами данных).
Внешние программы могут быть написаны на разных языках, но, при этом, если они написаны в соответствии с интерфейсом CGI, то они называются CGI – сценариями или CGI – скриптами. При использовании этого интерфейса у клиента появляется возможность, например, на языке HTML включать в документ форму запроса к базе данных.
Модель доступа на стороне клиента (рисунок 5).
Модель доступа в Internet со стороны клиента
Рисунок 5 - Модель доступа в Internet со стороны клиента
Рассмотрим возможный вариант реализации такой модели.
Пусть в HTML – документе требуется получить данные из базы. Для этого:
1) на языке Java пишутся программы, называемые апплетами, которые затем компилируются;
2) в тексте HTML – документа в нужных местах ставятся ссылки на соответствующие апплеты; программы хранятся на сервере;
3) при обнаружении ссылки апплет автоматически пересылается с сервера в среду выполнения браузера и выполняется там, в том числе, запрашивая недостающую информацию у пользователя;
4) Java – апплет взаимодействует с сервером БД и полученную информацию предоставляет пользователю.
Более подробно с вариантами архитектуры можно познакомиться, например, здесьиздесь.
Вернуться в содержание