Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БСТ19ХХ / Вопросы к экзамену ППСУБДиЗ.docx
Скачиваний:
127
Добавлен:
20.04.2022
Размер:
1.08 Mб
Скачать
  1. Модель клиент-сервер в технологии распределенных бд

Системы на основе технологий "Клиент-сервер" исторически выросли из первых централизованных многопользовательских автоматизированных информационных систем, интенсивно развивавшихся в 70-х годах, и получили наиболее широкое распространение в сфере информационного обеспечения крупных предприятий и корпораций.

При реализации данной технологии отступают от одного из основных принципов создания распределенных систем – отсутствия центрального узла. Принцип централизации хранения и обработки данных является базовым принципом технологии клиент-сервер.

Один из основных принципов технологии «клиент-сервер» заключается в разделении операций обработки данных на три группы, имеющие различную природу. Первая группа – это ввод и отображение данных. Вторая группа объединяет прикладные операции обработки данных, характерные для решения задач данной предметной области. К третьей группе относятся операции хранения и управления данными (базами данных или файловыми системами). Выделяют также служебный компонент, реализующий служебные функции, играющие роль связок между функциями первых групп.

Согласно этой классификации в любом техпроцессе можно выделить программы трёх видов:

1. программы представления, реализующие операции первой группы;

2. прикладные программы, поддерживающие операции второй группы;

3. программы доступа к информационным ресурсам, реализующие операции третьей группы.

В соответствии с этим выделяют следующие модели реализации технологии «клиент-сервер»:

1. модель файлового сервера (File Server - FS);

2. модель доступа к удалённым данным (Remote Data Access – RDA);

3. модель сервера базы данных (DataBase Server – DBS);

4. модель сервера приложений (Application Server – AS).

  1. Двухуровневые модели

В зависимости от характера распределения можно выделить следующие модели распределений:

· распределенная презентация (Distribution presentation, DP);

· удаленная презентация (Remote Presentation, RP);

· распределенная бизнес-логика (Remote business logic, RBL);

· распределенное управление данными (Distributed data management, DDM);

· удаленное управление данными (Remote data management, RDA).

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

Модель файлового сервера (FS)

Модель файлового сервера является наиболее простой.

Суть FS- модели иллюстрируется схемой:

Один из компьютеров сети выделяется и определяется файловым сервером, т. е. общим хранилищем любых данных.

В FS-модели все основные компоненты размещаются на клиентской установке: программы представления, прикладные программы, программы доступа к информационным ресурсам, база метаданных и собственно СУБД.

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

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

Недостатки:

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

· узкий спектр операций манипулирования с данными, который определяется только файловыми командами;

· отсутствие адекватных средств безопасности доступа к данным (защита только на уровне файловой системы).

Модель удаленного доступа к данным (RDA):

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

Преимущества данной модели:

· перенос компонента представления и прикладного компонента на клиентский компьютер существенно разгрузил сервер БД: процессор или процессоры сервера целиком загружаются операциями обработки данных, запросов и транзакций;

· резко уменьшается загрузка сети, так как по ней от клиентов к серверу передаются не запросы на ввод-вывод в файловой терминологии, а запросы на SQL, и их объем существенно меньше. В ответ на запросы клиент получает только данные, релевантные запросу, а не блоки файлов, как в FS-модели.

Основное достоинство RDA-модели — унификация интерфейса «клиент-сервер», стандартом при общении приложения-клиента и сервера становится язык SQL.

Недостатки:

· запросы на языке SQL при интенсивной работе клиентских приложений могут существенно загрузить сеть;

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

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

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