Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курс лекций СБД.doc
Скачиваний:
23
Добавлен:
13.11.2019
Размер:
1.94 Mб
Скачать
    1. Нераспределенные мультибазовые субд

Истинно распределенная СУБД обеспечивает бесшовную интеграцию различных локальных СУБД, расположенных в нескольких узлах. Существуют и другие формы мультибазовой кооперации.

      1. Клиент-серверные системы

Клиент-серверные системы очень популярны в средах, где используются персональные компьютеры, соединенные высокоскоростной локальной сетью. В такой среде можно выделить машины-клиенты и машины-серверы.

Клиент – это машина, обеспечивающая внешнюю оболочку (front end) базы данных. Под внешней оболочкой подразумевается все, что обеспечивает интерфейс пользователя базы данных, будь то SQL-интерпретатор, генератор отчетов, другая вспомогательная программа базы данных или любая прикладная программа, в которую встроены обращения к базе данных. Когда клиентскому приложению требуются услуги базы данных, оно должно послать запрос серверу. Сервер – это машина, на которой установлена СУБД и хранятся данные. Она представляет собой внутреннюю часть базы данных (back end).

Клиентским машинам требуется интерфейс, дающий возможность осуществлять передачу сетевых данных между локальными приложениями и сетью. Серверу требуется интерфейс, дающий возможность осуществлять передачу данных между сетью и СУБД. Таким образом, сервер может обслуживать запросы к базе данных со стороны приложений, работающих на различных клиентских машинах.

Преимущество такой организации заключается в том, что рабочая загрузка по выполнению приложений не затрагивает машину-сервер, а распределена по различным машинам-клиентам. Машина-сервер становится специализированной машиной базы данных. Элементы управления интерфейсом пользователя, графикой, логикой приложений и т.д. передаются клиентам. Перечень функций клиентов и сервера представлен на рис. 7.4.4.

Клиент

Сервер

Управление интерфейсом пользователя

Прием запросов к базе данных

Прием данных пользователей

Обработка запросов к базе данных:

  • обеспечение целостности

  • управление параллельным доступом

  • оптимизация запросов

  • обеспечение безопасности

  • активизация процедур восстановления

Обработка логики приложений

Генерация запросов к базе данных

Передача запросов к базе данных серверу

Передача клиентам результатов запросов к базе данных

Получение результатов от сервера

Форматирование результатов согласно логике приложений

Рис. 7.4.4. Функции клиента и сервера

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