Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Управление распределенными данными




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

Модели архитектуры клиент-сервер

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

Типичные варианты (рис. 5.1) разделения функций между компьютером-сервером и компьютером-клиентом:

o Распределенное представление;

o Удаленное представление;

o Распределенная функция;

o Удаленный доступ к данным;

o Распределенная БД.

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

В модели удаленного доступа к данным (Remote Data Access - RDA) программы, реализующие функции представления информации и логик прикладной обработки, совмещены и выполняются на компьютере-клиенте. Обращение за сервисом управления данными происходит через среду передачи с помощью операторов языка SQL или вызовом специальной библиотеки API (Application Programming Interface – интерфейс прикладного программирования).


Компьютер-сервер

Распределенное представление Удаленное представление Распределенная функция Удаленный доступ к данным Распределенная БД
Управление данными Управление данными Управление данными Управление данными Управление данными
Обработка Обработка Обработка    
Представление        
        Управление данными
    Обработка Обработка Обработка
Представление Представление Представление Представление Представление

Компьютер-клиент

Рис. 5.1. Спектр моделей архитектуры клиент-сервер

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

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

Модель удаленного представления (сервера баз данных) (DataBase Server - DBS) отличается от RDA-модели тем, что функции компьютера-клиента ограничиваются функциями представления информации, а прикладные функции обеспечиваются приложением, находящемся на компьютере-сервере. Приложения реализуются несколькими клиентами в виде хранимых процедур, хранящихся в словаре базы данных. Хранимые процедуры могут выполняться в режиме компиляции и интерпретации.

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

Недостатки:

- сильная привязка операторов хранимых процедур к конкретной СУБД. Язык написания хранимых процедур – процедурное расширение языка SQL, который уступает С и Pascal. В большинстве СУБД нет удовлетворительных средств отладки и тестирования хранимых процедур, а неотлаженные программы могут приводить к некорректностям баз данных, зависаниям серверных и клиентских программ во время работы системы и т.п.

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

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

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

Модель распределенного представления реализует централизованную схему управления вычислительными ресурсами.

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

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

В модели распределенной функции логика обработки данных распределена по узлам. Общая часть прикладных функций информационной системы реализована на компьютере-сервере, а специфические функции выполняются на компьютере-клиенте. Функции общего характера - стандартное обеспечение целостности данных, например, в виде хранимых процедур; специальная прикладная обработка – оставшиеся прикладные функции. Подобную модель имеют информационные системы, использующие информацию из нескольких неоднородных баз данных.

Модель распределенной базы данных предполагает наличие мощного компьютера-клиента. Данные хранятся на компьютере-клиенте и на компьютере-сервере. Взаимосвязь обеих баз данных может быть двух разновидностей: а) в локальной и удаленной базах хранятся отдельные части единой базы данных; б) локальная и удаленная базы данных являются синхронизируемыми друг с другом копиями.

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

Трехзвенная модель распределения функций представляет собой типовой вариант, при котором каждая из трех функций приложения реализуется на отдельном компьютере. Модель имеет название модель сервера приложений, или AS-модель (Application Server) (рис. 5.2).

 
 


Компьютер-сервер БД

 

 

Компьютер-сервер приложений

 

 

Компьютер-клиент

 

Рис. 5.2. Трехзвенная модель сервера приложений

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

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

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

Программные продукты, реализующие среду функционирования приложений на компьютерах-серверах приложений – BEA WebLogic Server (BEA System Corp.), Inprise Application Server (Inprise Corp.) и IBM Web Sphere Application Server (IBM Corp.)

Сложные схемы взаимодействия – схемы, в которых элемент, являющийся сервером для некоторого клиента, в свою очередь, выступает в роли клиента по отношению к другому серверу (рис. 5.3). Пример этого мы наблюдали в AS-модели.

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

 
 


 

 

Рис. 5.3. Цепочка взаимодействий типа клиент-сервер

 

При рассмотрении взаимодействия объектов в динамике получаются еще более сложные схемы взаимодействия. Пример схемы – случай, когда в процессе работы роли объектов меняются: объект, являющийся в некоторый момент времени клиентом по отношению к другому объекту, в последующем становится сервером для другого объекта.

 
 

 

 


Рис. 5.4. Множественные связи взаимодействия типа клиент-сервер

Мониторы обработки транзакций (Transaction Processing Monitor - TPM), или мониторы транзакций представляют собой программные системы категории промежуточного слоя (Middleware), обеспечивающие эффективное управление информационно-вычислительными ресурсами в распределенной вычислительной системе. Основное назначение TPM – организация гибкой, открытой среды для разработки и управления мобильными приложениями, оперативно обрабатывающими распределенные транзакции. Применение TPM наиболее эффективно в гетерогенных вычислительных сетях.

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

Принципы организации обработки информации с помощью монитора транзакций описываются моделью монитора транзакций X/Open DTP (Distributed Transaction Processing – обработка распределенных транзакций). Эта модель включает в себя три объекта: прикладную программу, менеджер ресурсов (Resource Manager - RM) и монитор, или менеджер транзакций (Transaction Manager - TM) (рис. 5.5).

 
 

 


SQL ATMI

XA

 

 

Рис. 5.5. Модель обработки транзакций X/Open DTP

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

Интерфейс ATMI (Application Transaction Monitor Interface – интерфейс монитора транзакций приложения) позволяет вызывать функции монитора обработки транзакций на некотором языке программирования, например С.

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

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

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

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

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

Управление загрузкой состоит в запуске или остановке AS-процессов (программных компонентов AS-модели) в зависимости от заранее установленных параметров и текущего состояния системы. (AS – Application Server – сервер приложений). При необходимости монитор обработки транзакций может тиражировать копии AS-процессов на этом или других узлах сети.

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

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

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

 

Управление данными в распределенных системах связано с решением двух проблем:

° поддержка соответствия базы данных вносимым изменениям;

° обеспечение совместного доступа нескольких пользователей к общим данным.




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 2936; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.009 сек.