
- •Введение
- •1 Лекция. Развитие технологии баз данных
- •1.1 Информационные системы
- •1.2 Файлы и файловые системы
- •2 Лекция. Информационные системы, использующие базы данных
- •2.1 Недостатки файловых систем
- •2.2 Информационные системы, использующие базы данных
- •3 Лекция. История развития систем управления базами данных
- •3.1 Базы данных на больших эвм
- •3.2 Эпоха персональных компьютеров
- •3.3 Распределенные базы данных
- •3.4 Перспективы развития систем управления базами данных
- •4 Лекция 4 Системный анализ предметной области
- •4.1 Предметная область информационной системы
- •4.2 Примеры описания предметной области
- •5 Лекция. Принципы проектирования баз данных
- •5.1 Архитектура базы данных. Физическая и логическая независимость
- •5.2 Концептуальные модели данных
- •6 Лекция. Концептуальное моделирование данных
- •6.1 Основные определения концептуальных моделей данных
- •6.2 Графическое представление концептуальной модели
- •7 Лекция Разработка er-диаграммы для анализируемой предметной области
- •8 Лекция. Примеры концептуального моделирования
- •9 Лекция 9 Методы моделирования данных
- •9.1 Три базовые модели данных
- •10 Лекция 10 Реляционная модель данных
- •10.1 Реляционные таблицы и ключи
- •10.2 Ограничительные условия, поддерживающие целостность данных
- •11. Лекция. Преобразование концептуальной модели в реляционную
- •11.1 Преобразование объектных множеств и атрибутов
- •11.2 Преобразование отношений
- •12 Лекция. Нормализация базы данных
- •13 Лекция. Функциональные зависимости и связанные с ними нормальные формы
- •13.1 Функциональные зависимости и нормальные формы
- •13.2 Сравнение концептуального и реляционного моделирования данных
- •14 Лекция 14 Реализация разработанной реляционной схемы
- •14.1 Структурированный язык запросов sql
- •14.2 Объекты базы данных
- •15 Лекция. Распределенная обработка данных
- •15.1 Общие сведения
- •15.2 Модели «клиент—сервер» в технологии баз данных
- •15.3 Двухуровневые модели
15.3 Двухуровневые модели
Двухуровневая модель фактически является результатом распределения пяти указанных функций между двумя процессами, которые выполняются на двух платформах: на клиенте и на сервере. В чистом виде почти никакая модель не существует, приведем наиболее характерные особенности каждой двухуровневой модели:
1) Модель удаленного управления данными или модель файлового сервера (File Server, FS). В этой модели СУБД, а также функции управления всеми информационными ресурсами находится на клиенте. На сервере располагаются файлы с данными, и поддерживается доступ к файлам. Запрос клиента формулируется в командах DML. СУБД переводит этот запрос в последовательность файловых команд. Каждая файловая команда вызывает перекачку блока информации на клиента.
2) В модели удаленного доступа к данным (Remote Data Access, RDA) база данных хранится на сервере. На сервере же находится ядро СУБД. На клиенте располагается презентационная логика и бизнес-логика приложения. Клиент обращается к серверу с запросами на языке SQL.
3) Модель сервера баз данных. Данную модель поддерживают большинство современных СУБД.. Основу данной модели составляет механизм хранимых процедур как средство программирования SQL-сервера, механизм триггеров как механизм отслеживания текущего состояния информационного хранилища и механизм ограничений на пользовательские типы данных, который иногда называется механизмом поддержки доменной структуры.
В этой модели бизнес-логика разделена между клиентом и сервером. На сервере бизнес-логика реализована в виде хранимых процедур — специальных программных модулей, которые хранятся в БД и управляются непосредственно СУБД. Клиентское приложение обращается к серверу с командой запуска хранимой процедуры, а сервер выполняет эту процедуру и регистрирует все изменения в БД, которые в ней предусмотрены. Сервер возвращает клиенту данные, релевантные его запросу, которые требуются клиенту либо для вывода на экран, либо для выполнения части бизнес-логики, которая расположена на клиенте. Трафик обмена информацией между клиентом и сервером резко уменьшается.
Централизованный контроль в модели сервера баз данных выполняется с использованием механизма триггеров. Механизм использования триггеров предполагает, что при срабатывании одного триггера могут возникнуть события, которые вызовут срабатывание других триггеров. Этот мощный инструмент требует тонкого и согласованного применения, чтобы не получился бесконечный цикл срабатывания триггеров.
В данной модели сервер является активным, потому что не только клиент, но и сам сервер, используя механизм триггеров, может быть инициатором обработки данных в БД. И хранимые процедуры, и триггеры хранятся в словаре БД, они могут быть использованы несколькими клиентами, что. существенно уменьшает дублирование алгоритмов обработки данных в разных клиентских приложениях. Для написания хранимых процедур и триггеров используется расширение стандартного языка SQL, так называемый встроенный SQL.
Недостатком данной модели является очень большая загрузка сервера. Действительно, сервер обслуживает множество клиентов и выполняет следующие функции: осуществляет мониторинг событий, связанных с описанными триггерами; обеспечивает автоматическое срабатывание триггеров при возникновении связанных с ними событий; обеспечивает исполнение внутренней программы каждого триггера; запускает хранимые процедуры по запросам пользователей; запускает хранимые процедуры из триггеров; возвращает требуемые данные клиенту; обеспечивает все функции СУБД: доступ к данным, контроль и поддержку целостности данных в БД, контроль доступа, обеспечение корректной параллельной работы всех пользователей с единой БД.
Если мы переложили на сервер большую часть бизнес-логики приложений, то требования к клиентам в этой модели резко уменьшаются. Иногда такую модель называют моделью с «тонким клиентом», в отличие от предыдущих моделей, где на клиента возлагались гораздо более серьезные задачи. Эти модели называются моделями с «толстым клиентом».
Для разгрузки сервера используется трехуровневая модель.
Список литературы
1. Хансен Г., Хансен Д. Базы данных: разработка и управление. – М.: ЗАО «Издательство БИНОМ», 1999 г.
2. Тихомиров Ю. Microsoft SQL Server 7.0 – СПб. Издательство «Питер», 1999 г.
3. Плю Р., Стефенс Р., Райан К. Освой самостоятельно SQL за 24 часа. – М.: Издательский дом «Вильямс», 2000 г.
4. Кандзюба С.П., Громов В.Н. Delphi 6/7. Базы данных и приложения. – СПб: ООО «ДиаСофтЮП», 2002 г.
5. Бобровский С. Delphi 5: учебный курс. – СПб: Издательство «Питер», 2000 г.
6 Базы данных, учебник для высших учебных заведений под редакцией Хомоненко А. СПб.: Издательство «Корона», 2000 г.
7 Карнова Т.Базы данных. - СПб.: Издательство «Питер», 2000 г.
8 Ю. А. Григорьев, Г. И. Ревунrов. Банки данных. - Изд. МГТУ им. Н. Э. Баумана, 2002 г.
9 С.В. Глушаков, Д. В. Ломотько. Базы данных. Учебный курс. М.: Издательский дом «Вильямс», 2000 г.
10 Джек Л. Харрингтон Проектирование реляционных баз данных просто и доступно. – М.:Издательство «Лори», 2000 г.
11 Т.А. Гаврилова, В. Ф. Хорошевский Базы знаний интеллектуальных систем - СПб,: Излательство «Питер», 2000 г.
12 В. В. Корнеев, А. Ф. Гареев и др. Базы данных интеллектуальная обработка информации - М: «Нолидж», 2000 г.
Содержание |
с |
1 Лекция. Развитие технологии баз данных 1.1 Информационные системы 1.2 Файлы и файловые системы |
|
2 Лекция. Информационные системы, использующие базы данных 2 .1 Недостатки файловых систем 2.2 Информационные системы, использующие базы данных |
|
3 Лекция. История развития систем управления базами данных 3.1 Базы данных на больших ЭВМ 3.2 Эпоха персональных компьютеров 3.3 Распределенные базы данных 3.4 Перспективы развития систем управления базами данных |
|
4 Лекция. Системный анализ предметной области 4.1 Предметная область информационной системы 4.2 Примеры описания предметной области |
|
5 Лекция. Принципы проектирования баз данных 5.1 Архитектура базы данных 5.2 Концептуальные модели данных |
|
6 Лекция. Концептуальное моделирование данных 6.1 Основные определения концептуальных моделей данных 6.2 Графическое представление концептуальной модели |
|
7 Лекция. Разработка ER-диаграммы для предметной области |
|
8 Лекция. Примеры концептуального моделирования |
|
9 Лекция. Методы моделирования данных |
|
10 Лекция. Реляционная модель данных 10.1 Реляционные таблицы и ключи 10.2 Ограничительные условия, поддерживающие целостность данных |
|
11 Лекция. Преобразование концептуальной модели в реляционную 11.1 Преобразование объектных множеств и атрибутов 11.2 Преобразование отношений |
|
12 Лекция. Нормализация базы данных |
|
13 Лекция. Функциональные зависимости и связанные с ними нормальные формы 13.1 Функциональные зависимости и нормальные формы 13.2 Сравнение концептуального и реляционного моделирования |
|
14 Лекция. Реализация разработанной реляционной схемы 14.1 Структурированный язык запросов SQL 14.2 Объекты базы данных |
|
15 Лекция. Распределенная обработка данных 15.1 Общие сведения 15.2 Модели «клиент—сервер» в технологии баз данных 15.3 Двухуровневые модели Список литературы |
|