Лекция 3 методы и технологии

advertisement
Лекция 3
Современные
методы
и
технологии
управления
распределенной
информацией в вычислительных системах
Специфика решаемых с помощью ИС задач, различная сложность их создания,
модификации, сопровождения, интеграции с другими ИС и т.п., позволяют разделить
информационные системы на следующие классы:
– малые информационные системы;
– средние информационные системы;
– крупные информационные системы (корпоративные информационные системы
– системы уровня региональных организаций).
К классу малых информационных систем относятся системы уровня
небольшого предприятия. К основным признакам таких систем следует отнести:
– непродолжительный жизненный цикл;
– ориентация на массовое использование;
– невысокая цена;
– практическое отсутствие средств аналитической обработки данных;
– отсутствие возможности незначительной модификации без участия
разработчиков;
– использование среднего класса систем управления базами данных, таких как
Clarion, FoxPro, Clipper, Paradox, Access и др.;
– однородность аппаратного и системного программного обеспечения;
– практическое отсутствие средств обеспечения безопасности.
В отличие от предыдущего класса, признаками средних информационных
систем являются:
– длительный жизненный цикл (возможность роста до крупных систем);
– наличие аналитической обработки данных;
– наличие штата сотрудников, осуществляющих функции администрирования
аппаратных и программных средств;
– наличие средств обеспечения безопасности;
– тесное взаимодействие с фирмами - разработчиками программного обеспечения
по вопросам сопровождения компонентов ИС.
И, наконец, к характерным признакам корпоративных информационных
систем следует отнести:
– длительный жизненный цикл;
– разнообразие используемого аппаратного обеспечения, жизненный цикл
которого меньше, чем у создаваемой системы;
– разнообразие используемого программного обеспечения;
– масштабность и сложность решаемых задач;
– пересечение множества различных предметных областей;
– ориентация на аналитическую обработку данных;
– территориальную распределенность.
В настоящее время появляется множество работ, касающихся описания продуктов,
технологий и методологий, рассчитанных на создания малых и средних информационных
систем. Технологии и методологии построения крупных информационных систем,
объединяющих внутри себя множество локальных информационных систем, практически
не рассматриваются и не обсуждаются. Довольно часто это приводит к тому, что в
качестве технологий создания крупной информационной системы разработчики выбирают
те, которые изначально на это не рассчитаны. В результате реализуемые проекты не
получают должного развития.
В связи с этим на первое место выходят вопросы создания концепции
интеграции распределенных
информационных систем уровня региональных
организаций с использованием распределенных объектных технологий.
Технология создания информационных систем представляет собой совокупность
практических инженерных знаний, применяемых в процессе разработки программного
обеспечения на протяжении всего его жизненного цикла. Технология также описывает
принципы организации и управления процессом разработки, представляя его в виде ряда
последовательных и параллельных этапов, а также рабочих продуктов, создаваемых на
этих этапах. С технологией неразрывно связаны инструментальные средства,
используемые на различных стадиях разработки.
Выбор приемлемой технологии создания информационной системы напрямую
зависит от выбора архитектуры ИС.
Рассматривая
информационную
систему
как
совокупность
взаимодействующих компонентов, можно распределить их по следующим уровням:
– аппаратный уровень – компьютеры, периферийные устройства, сетевое и
телекоммуникационное оборудование и т.д.;
– системный и системно-зависимый уровень – операционные системы, сетевые
протоколы и т. д.;
– уровень прикладной среды – средства middleware (CORBA, DCE, Tuxedo и т.д.),
DBMS, Intranet, OLAP, коммуникационные интерфейсы.
На практике наибольшее применение получили двухуровневая и
трехуровневая архитектуры распределенного управления.
Двухуровневая архитектура предполагает, что количество уровней равно двум.
Один из двух компонентов выступает в роли сервера, т.е. реализует набор сервисов,
доступных другому компоненту, который выступает в роли клиента, т.е. в процессе
работы пользуется сервисами, предоставляемыми сервером.
Компоненты могут располагаться как на одном компьютере, так и на различных
компьютерах, объединенных в сеть. Различия в реализациях двухуровневой архитектуры
определяются в основном тем, функции каких групп выполняет клиент, а каких –
сервер.
Существует несколько вариантов декомпозиции функций представления,
прикладных функций и функций хранения и управления данными в рамках
двухуровневой архитектуры ИС.
Согласно указанным вариантам декомпозиции, можно говорить о следующих
двухуровневых архитектурах:
– интеллектуального клиента (доступ к удаленным данным, архитектура на базе
файлового сервера);
– интеллектуального сервера (доступ в режиме терминала, архитектура
интеллектуального сервера баз данных);
– распределенной функциональной логики.
Двухуровневые архитектуры обладают рядом достоинств и недостатков.
Использование
двухуровневых
архитектур
при
построении
региональных
информационных систем, исходя из присущих им недостатков, считается неэффективным.
Трехуровневые архитектуры предусматривают не столь жесткие связи между
клиентом и сервером и более гибкие формы распределенной обработки.
Наиболее распространенной считается архитектура, согласно которой выделяются
три компоненты ИС (представления, прикладной, доступа к информационным
ресурсам), являющиеся автономными и общающиеся через средства межпроцессного
взаимодействия при помощи стандартных интерфейсов. Отдельные компоненты могут
располагаться как на одном компьютере, так и на разных компьютерах, обеспечивая тем
самым распределенную обработку информации.
Компонент представления часто располагается на персональном компьютере,
прикладной компонент (называемый также сервером приложения) выполняется сервером
среднего уровня под управлением операционной системы Unix или Windows NT, а
компонент доступа к данным и сами данные располагаются либо на мощных Unix-
серверах, либо на больших или мини-ЭВМ. Однако на практике все три компонента могут
с успехом выполняться и на одном компьютере.
Основным элементом трехуровневой архитектуры является сервер приложения.
Как правило, в нем реализуется несколько прикладных функций, каждая из которых
оформлена как сервис (service) и предоставляет некоторые услуги всем компонентам
представления, которые желают и могут ими воспользоваться. Серверов приложений
может быть несколько, и каждый из них может предоставлять определенный набор
севрисов. Детали реализации прикладных функций в серверах приложений полностью
скрыты от клиентов. Кроме того, разработчики могут создавать, изменять или переносить
любые компоненты ИС, практически не затрагивая других.
По оценкам специалистов в области информационных технологий перспективным
направлением развития такого класса систем являются распределенные одноранговые
архитектуры управления.
Согласно распределенной одноранговой архитектуре клиент, взаимодействующий
с сервером приложений, трактуется более широко, чем компонент представления. Он
может поддерживать интерфейс с конечным пользователем, а может выполнять
прикладные функции и являться сервером приложения. В общем случае, в рамках данной
архитектуры, клиент (сервер) может, как предоставлять, так и запрашивать некоторые
сервисы. Это позволяет на этапе проектирования информационной системы осуществить
такую декомпозицию функций из указанных выше трех групп по компонентам ИС,
которая была бы оптимальной в контексте решаемой задачи.
Для обеспечения взаимодействия компонентов информационной системы,
поддерживающей распределенную одноранговую архитектуру, необходимо создать
промежуточный программный уровень (middleware), при помощи которого запросы
принимаются от клиентов и направляются соответствующему серверу. К счастью, сегодня
уже имеется или анонсировано достаточное количество инструментальных средств,
позволяющих разработчикам строить распределенные ИС, не вдаваясь в детали
реализации взаимодействия клиента и сервера. Многие из этих программных продуктов
реализуют стандарт CORBA (Common Object Request Broker Architecture), а некоторые
инструментальные пакеты (например, продукт Orbix фирмы IONA Technologies)
предлагают расширенные варианты этого стандарта.
Из проведенного обзора можно сделать вывод: распределенные одноранговые
архитектуры имеют более универсальный характер, чем двухуровневые и трехуровневые
архитектуры. Четкое разграничение логических компонентов, присущее распределенным
одноранговым архитектурам, и рациональный выбор программных средств позволяют
достичь такого уровня гибкости, открытости и производительности ИС, который пока
недостижим при использовании двухуровневых и трехуровневых архитектур.
Download