Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект_ОС.doc
Скачиваний:
24
Добавлен:
03.09.2019
Размер:
582.66 Кб
Скачать

9. Варианты построения информационных приложений

Групповые и корпоративные информационные системы и соответствующие приложения могут строиться различными способами:

– многотерминальные централизованные вычислительные системы;

– системы на основе локальной сети ПК (файл-серверные приложения);

– системы с архитектурой клиент-сервер;

– системы с распределенными вычислениями;

– офисные системы;

– системы на основе Internet/Intranet-технологий.

9.1. Типовые компоненты информационных приложений

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

PS (Presentation Services) – средства представления.

Обеспечиваются устройствами, принимающими ввод от пользователя и отображающими то, что сообщает ему компонент логики представления PL, а также реализуют соответствующую программную поддержку. Данная компонента может быть текстовым терминалом или Х-терминалом, а также персональным компьютером или рабочей станцией в режиме программной эмуляции терминала или Х-терминала.

PL (Presentation Logic) – логика представления.

Управляет взаимодействием между пользователем и ЭВМ. Обрабатывает действия пользователя по выбору альтернативы меню, по нажатию кнопки или при выборе элемента из списка.

BL (Business or Application Logic) – прикладная логика.

Набор правил для принятия решений, вычислений и операций, которые должно выполнить приложение.

DL (Data Logic) – логика управления данными.

Операции с базой данных (SQL-операторы SELECT, UPDATE и INSERT), которые нужно выполнить для реализации прикладной логики управления данными.

DS (Data Services) – операции с базой данных.

Действия СУБД, вызываемые для выполнения логики управления данными, такие как манипулирование данными, определения данных, фиксация или откат транзакций и т. п. На этом уровне также компилируются SQL-предложения.

FS (File Services) – файловые операции.

Дисковые операции чтения и записи данных для СУБД и других компонент. Обычно являются функциями ОС.

9.2. Централизованные многотерминальные системы

В централизованной системе, характерной для Unix, терминал реализует лишь функции представления данных PS, тогда как остальные функции обеспечивает центральный узел. Центр должен реагировать на каждый запрос пользователя (PL), выполнять логику приложения (BL, DL) и извлекать данные из БД (DS, FS). Имеются две серьезные проблемы для централизованной схемы: трудно обеспечить графический интерфейс; каждый дополнительный пользователь и приложение вносят существенную нагрузку на сервер, теряется масштабируемость.

9.3. Файл-серверные приложения

В отличии от централизованной системы архитектура «файл-сервер» не имеет сетевого разделения компонентов диалога PS и PL, использует ПК для функций отображения, что облегчает построение графического интерфейса. Файл-сервер только извлекает данные из файлов, так что дополнительные пользователи и приложения добавляют лишь незначительную нагрузку на ЦП. Каждый новый клиент добавляет вычислительную мощность к сети.

9.4. Приложения клиент-сервер

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

Другая отличительная черта серверов БД – это наличие справочника данных, в котором записаны структура БД, ограничения целостности данных, форматы и даже серверные процедуры обработки данных по вызову или по событиям в программе. Объектами разработки в таких приложениях помимо диалога и логики обработки являются, прежде всего, реляционная модель данных и связанный с ней набор SQL-операторов для типовых запросов для этой БД.

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

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

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

– необходимость администрирования приложений для большого числа клиентов при отсутствии унификации в конфигурациях клиентов и средств управления изменениями;

– чрезмерное использование хранимых процедур для реализации прикладной логики снижает масштабируемость сервера и не способствует переносимости приложений;

– возрастает время реакции из-за ожидания завершения пакетного задания на сервере и влияния таких заданий на диалоговых пользователей;

– обеспечение целостности распределенной транзакции в неоднородной распределенной БД.

Ряд перечисленных проблем может быть решен при использовании режима распределенных вычислений.