ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 20.05.2023

Просмотров: 163

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

- Большая нагрузка сети

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

- Дорогостоящее аппаратное обеспечения, поскольку пользователи разделяют его ресурсы.

- Отсутствие графического интерфейса.

Благодаря решению проблем, которые были присущих технологии (FS), получилась более прогрессивная технология, получившая названия «клиент-сервер»

Для современных СУБД архитектура «клиент-сервер» стала стандартом. Если подразумевается что будет использована подобная архитектура, это означает что часть ресурсов будет распределена на сервере ( программа - сервер ) а другая часть у компьютере клиента. (программа - клиент)

Различие в реализации приложения в рамках технологии «клиент-сервер», определяется четырьмя факторами :

- Какие виды программного обеспечения в логических компонентах

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

- Какие логические компоненты распределяются компьютерами в сети.

- Какие механизмы используются для связи компонентов между собой.

В связи с эти, выделяют три подхода, каждый из которых реализован в связи с технологией «клиент-сервер» Рассмотрим каждую отдельно :

- модель доступа к удаленным данным (Remote Date Access - RDA);

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

Из минусов :

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

Администрирование на удовлетворительном уровне приложений RDA практически невозможно.Если различные по своей природе функции ( функции представления и прикладные функции ) смешанны в одной и той же программе. При необходимости приходиться в таком случае переписывать всю программу целиком.


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

- модель сервера базы данных (DateBase Server - DBS);

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

В DBS моделях приложение является распределенным. Компонент представления выполняться на компьютере клиента,в то время как прикладной компонент (реализующий бизнес -функции) оформлен как набор хранимых процедур и функционирует на компьютере сервере БД. Хранимые процедуры также можно назвать процедурами баз данных.

Преимущество DBS перед RDA моделью очевидна: это и возможность централизованного администрирования различных функций, и снижение трафика сети из за того, что вместо SQL запросов по сети передаются вызовы хранимых процедур, и возможность разделения функций между несколькими приложениями, и экономия ресурсов компьютера за счёт единожды созданного плана выполнения процедуры.

Из минусов :

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

Также отсутствует разнообразные варианты взаимодействия клиента и сервиса, необходимых для децентрализации приложения, например хранимые очереди, асинхронные вызовы и т.д.

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

На практике обычно синтезируют модели RDA и DBS для построения многопользовательских информационных систем.Поддержка целостности базы данных и некоторые простейшие прикладные функции.(DBS модель) другие более сложные функции реализуются непосредственно в прикладной программе, которая выполняется на компьютере клиента (RDA модель)


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

Это модель представляет собой процесс, выполняемые на компьютере клиенте и отвечающий за интерфейс с пользователем.(ввод и отображения данных) Основным элементом данной модели является прикладной компонент,называющийся сервером приложения, функционирующим на удалённом компьютере ( или нескольких компьютерах )Сервер приложения реализован как группа прикладных функций , оформленных в виде серверной службы.Каждый сервис представляет некоторые услуги всем программам, которые желают и могут ими воспользоваться.Серверов приложений может быть несколько, и каждый представляет определённый набор услуг.Любая программа,которая пользуется ими,рассматривается как клиент приложения.Детали реализации прикладных функций в сервере приложений полностью скрыты от клиента приложения.Запросы поступающие от пользователя выстраиваются в очередь к AS -процессу,который извлекает и передаёт их для обработки в службе соответствие с приоритетами.

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

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

по медленным линиям связи которые позволяют снижать трафик между клиентом и сервером.

Изучив все модели технологии « клиент-сервер» делаем вывод : RDA и DBS имеют двоичную систему распределения функций.В RDA модели функции реализации отданы клиенту. В DBS модели функции распределяется посредством ядра СУБД.В RDA модели прикладной компонент сливается с компонентом представления. DBS интегрируется в компонент доступа к ресурсам.


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

Разберём что же такое означает термин «клиент-сервер» Это в первую очередь система распределённых вычислений.В данном случает это рассматривается как архитектура с участием нескольких серверов. Термин «сервер» означает просто программу отвечающею на запросы и выполняющие необходимые действия по запросу клиента.Кроме того интеграция дискретных сетевых компонентов и обеспечения их функционирования как единого целого способствует увеличению эффективности и снижению издержек.Чтобы добиться баланса между клиентом и сервером, компонент приложения должен выполняться на сервере когда централизованная обработка действительно эффективна.

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

Это зависит от платформы,модели на которой данный проект будет реализован. Так как ошибки допущенные на этом этапе могут свести на нет все преимущества прикладной части информационной системы.Причём большая часть недостатков будет выявлена на этапе эксплуатации.

Глава 3.Организация обработки данных.

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


Организация обработки данных в СУБД с архитектурой «клиент-сервер»

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

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

Поэтому любая СУБД не может повсеместно использоваться де угодно.

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

Этот язык представляет собой текущий стандарт интерфейса СУБД в открытых системах. Очевидное преимущество - стандартность интерфейса.

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

3.1. Транзакции

Разберём основополагающий механизм организации обработки данных - транзакции

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

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