Файл: Технология построения распределенных информационных систем (ПОНЯТИЯ РАСПРЕДЕЛЕННЫХ ИНФОРМАЦИОННЫХ СИСТЕМ).pdf
Добавлен: 26.05.2023
Просмотров: 617
Скачиваний: 4
СОДЕРЖАНИЕ
Глава 1. ПОНЯТИЯ РАСПРЕДЕЛЕННЫХ ИНФОРМАЦИОННЫХ СИСТЕМ
1.2 Предпосылки создания распределенных ИС
1.3 Основные задачи распределенной обработки
1.4 Технологии масштабирования
Глава 2. ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ В РАСПРЕДЕЛЕННЫХ СИСТЕМАХ
2.1. Технологии распределенных вычислений
2.2. Технологии и модели «Клиент-сервер»
2.3. Распределенные базы данных
2.4. Технологии реплицирования данных
ВВЕДЕНИЕ
Распределенные информационные системы охватывают, можно сказать, все аспекты работы, делая более тесной связь между производственными объектами и компонентами информационной инфраструктуры.
Вообще понятие информационных систем (ИС) широко и разнообразно. ИС – это система для поиска, хранения и обработки информации.
Распределенная информационная система (РИС) – это система, в которой свою роль выполняют несколько серверов баз данных (БД). Распределенные ИС обеспечивают работу с данными, расположенными на разных серверах, различных аппаратно-программных платформах и хранящимися в различных форматах. Они легко расширяются, основаны на открытых стандартах и протоколах, обеспечивают интеграцию своих ресурсов с другими ИС, предоставляют пользователям простые интерфейсы.
Цель моей курсовой работы: рассмотреть основные сведения о РИС. А именно: описать предпосылки ее развития, средства работы с данными, типы, основные принципы и т.д.
Я расскажу про модели построения распределенных информационных систем, проблемы их реализации, алгоритмы разделение программ, способы организации распределенных систем и синхронизации частей системы, алгоритмы баланса нагрузки и модель технологии распределенных приложений CORBA.
По окончанию раскрытия темы курсовой работы мы должны уметь проектировать и разрабатывать распределенные информационные системы, используя технологию CORBA.
Например, в бизнесе 21-го века уже невозможно обойтись без опоры на сложные инфосистемы с распределенной архитектурой. Принято считать, что появление и развитие платформы Unix, персонального компьютера (ПК), локальных сетей и приложений клиент/сервер стало основным стимулом для развития в корпорациях распределенной информационной инфраструктуры. Но нельзя забывать о том, что сегодня существенно меняются и сами принципы ведения бизнеса. Становится нормой распределение ответственности за принятие решений по большому числу независимых бизнес-подразделений корпорации. Меняются информационные потребности внутри предприятия.
О всех деталях более подробно мы поговорим чуть позже, а пока начну с первой главы и посвящена она будет – понятия распределенных информационных систем.
Глава 1. ПОНЯТИЯ РАСПРЕДЕЛЕННЫХ ИНФОРМАЦИОННЫХ СИСТЕМ
1.1 Классы ИС
Напомню, что распределенной считают такую систему, в которой функционирует более 1 сервера баз данных. Это применяется для уменьшения нагрузки на сервер и обеспечения работы территориально удаленных подразделений. Различная сложность создания, модификации, сопровождения, интеграции с другими системами позволяют разделить ИС (информационные системы) на классы: малых, средних и крупных распределенных систем.
Малые ИС имеют небольшой жизненный цикл, ориентацию на массовое использование, невысокую цену, невозможность модификации без участия разработчиков, использующие в основном настольные системы управления базами данных (СУБД), однородное аппаратно-программное обеспечение, не имеющие средств обеспечения безопасности.
Крупные корпоративные ИС, системы федерального уровня и другие имеют длительный жизненный цикл, миграцию унаследованных систем, разнообразие аппаратно-программного обеспечения, масштабность и сложность решаемых задач, пересечение множества предметных областей, аналитическую обработку данных, территориальную распределенность компонент.
К функциям таких ИС следует отнести, прежде всего, работу с распределенными данными, расположенными на разных физических серверах, различных аппаратно-программных платформах и хранящихся в различных внутренних форматах. В этом случае система должна предоставлять полную информацию о себе и всех своих ресурсах, легко расширяться, быть основана на открытых стандартах и протоколах, обеспечивать возможность интегрировать свои ресурсы с ресурсами других ИС. Для пользователей система должна обеспечивать различные уровни привилегий для пользователей и предоставлять простые интерфейсы доступа к информации.[1]
Данные из разнородных систем обычно объединяются в логические группы, к которой и адресуются запросы. Абстрактная система запросов предполагает, что система оперирует не конкретным синтаксисом запросов, а его логической сутью на основе абстрактных атрибутов.
При построении распределенных ИС, как правило, используются две базовые архитектуры: Клиент/сервер и Internet/Intranet.
Корпоративные ИС, построенные по архитектуре Клиент/сервер, предоставляют клиентам широкий спектр приложений и инструментов разработки, которые ориентированы на максимальное использование вычислительных возможностей клиентских рабочих мест. Ресурсы сервера используются в основном для хранения и обмена документами, а также для выхода во внешнюю среду. Данная архитектура позволяет лучше защитить серверную часть приложений, при этом, предоставляя возможность приложениям либо непосредственно адресоваться к другим серверным приложениям, либо маршрутизировать запросы к ним. Однако, частые обращения клиента к серверу снижают производительность работы сети. Приходится решать вопросы безопасной работы в сети, так как приложения и данные распределены между различными клиентами. Распределенный характер построения системы обусловливает сложность ее настройки и сопровождения
В основе ИС на базе Internet Intranet лежит принцип «открытой архитектуры». ПО ИС реализуется в виде аплетов или сервлетов (программ на языке JAVA) или в виде cgi модулей (программ на Perl или С). ИС данной архитектуры включает Web-yinh, реализованные при помощи технологий CORBA Enterprise JavaBeans, ActiveX 1X'ОМ, многоуровневые приложения на основе Java и XML, .Net-концепция с XML, в которой обмен между различными серверами (хранилищами данных, бизнес-приложениями, серверами для мобильных клиентов и другое) производится при помощи нейтрального к любой архитектуре XML.[2]
Под распределенной информационной базой понимается неограниченное количество баз данных, дистанционно отдаленных друг от друга и имеющих ряд общих характеристик:
- функционирующих по единым правилам, определенным централизованно для всех баз данных, входящих в распределенную информационную базу;
- обмен данными осуществляется по правилам, также определенным централизованно.
Организация распределенной базы необходима для компаний, осуществляющих различные виды деятельности, если в их повседневной работе возникает потребность решения следующих задач:
- необходимость оперативного получения информации из баз данных дистанционно отдаленных подразделений (или филиалов);
- необходимость консолидации в единой базе данных информации из баз данных юридических лиц, входящих в структуру компании, для последующего анализа данных и получения отчетности из одной базы, как по компании в целом, так и по каждому юридическому лицу в отдельности;
- необходимость введения централизованного изменения структуры и правил работы баз данных для работы всех дистанционно отдаленных подразделений (филиалов) и юридических лиц (с невозможностью изменения определенных правил непосредственно в отдаленном подразделении);
- необходимость ограничения и осуществления контроля изменения данных в дистанционно отдаленных подразделениях компании.
1.2 Предпосылки создания распределенных ИС
C самого начала развития вычислительной техники образовались два основных направления ее использования.
Первое направление - применение вычислительной техники для выполнения численных расчетов, которые слишком долго или вообще невозможно производить вручную. Становление этого направления способствовало интенсификации методов численного решения сложных математических задач, развитию класса языков программирования, ориентированных на удобную запись численных алгоритмов, становлению обратной связи с разработчиками новых архитектур ЭВМ.
Второе направление - это использование средств вычислительной техники в автоматических или автоматизированных информационных системах. Обычно объемы информации, с которыми приходится иметь дело таким системам, достаточно велики, а сама информация имеет достаточно сложную структуру. Одними из естественных требований к таким системам являются средняя быстрота выполнения операций и сохранность информации.
Но поскольку информационные системы требуют сложных структур данных, эти индивидуальные дополнительные средства управления данными являлись существенной частью информационных систем и практически повторялись от одной системы к другой. Стремление выделить и обобщить общую часть информационных систем, ответственную за управление сложно структурированными данными, и явилось, судя по всему, первой побудительной причиной создания различных систем управления.
Очень скоро стало понятно, что невозможно обойтись общей библиотекой программ, реализующей над стандартной базовой файловой системой более сложные методы хранения данных, например, хранение информации в нескольких файлах. Таким образом, все это способствовало созданию распределенных информационных систем.
Фактически, если информационная система поддерживает согласованное хранение информации в нескольких файлах, можно говорить о том, что она поддерживает базу данных. Если же некоторая вспомогательная система управления данными позволяет работать с несколькими файлами, обеспечивая их согласованность, можно назвать ее системой управления базами данных. Уже только требование поддержания согласованности данных в нескольких файлах не позволяет обойтись библиотекой функций: такая система должна иметь некоторые собственные данные (метаданные) и даже знания, определяющие целостность данных.
В мире существует огромное количество готовых к использованию информационно-вычислительных ресурсов. Они создавались в разное время, для их разработки использовались разные подходы. Почти всегда при разработке новой информационной системы можно найти подходящие по своим функциям уже работающие готовые компоненты.
1.3 Основные задачи распределенной обработки
Основная задача – облегчение доступа к удаленным ресурсам и контроль совместного использования этих ресурсов (компьютеров, файлов, данных в БД). Web-страницы и сети также входят в этот список. Для решения этой основной задачи, РС должна удовлетворять следующим требованиям[3]:
- Прозрачность
- Открытость
- Гибкость
- Масштабируемость (расширяемость)
- Прозрачность.
Важная задача РС состоит в том, чтобы скрыть тот факт, что процессы и ресурсы физически распределены по разным компьютерам. РС, которые представляются пользователям и приложениям в виде единой системы называются прозрачными (transparent). Концепция прозрачности применима к разным аспектам РС, а именно: Прозрачность доступа.[4] Цель – скрыть разницу в способах представления и передачи данных между разными типами ПК и ОС, способах представления имен файлов, правил работы с ними и др. Прозрачность местоположения. Цель – скрыть реальное физическое размещение ресурса. Важную роль в реализации этого играет именование. Прозрачность переноса. Цель – скрыть факт физического перемещения ресурса. При этом смена местоположения не влияет на доступ. Прозрачность смены местоположения – отличается от предыдущего тем, что местоположение ресурса может произойти при его использовании. Пример - мобильные пользователи. Прозрачность репликации (дублирования). Цель - скрыть факт наличия нескольких копий ресурса. Прозрачность параллельного доступа. Цель – скрыть от пользователя факт совместного использования ресурса. При этом обеспечивается целостность и непротиворечивость ресурса (например, механизм блокировок в БД). Прозрачность отказов. Цель – обеспечить нормальную работу при наличии отказов (или скрыть факт отказа и не уведомлять об этом пользователя). Пример – при работе с перегруженным Web-сервером браузер выжидает нужное время, а потом сообщает о недоступности страницы. Не все эти атрибуты должны быть полностью реализованы в РС, поскольку обеспечение прозрачности влияет на производительность.
- Открытая РС – это система, предлагающая службы, вызов которых требует стандартные синтаксис и семантику. Например, в сетях формат сообщений должен соответствовать протоколам[5]. В РС службы (и компоненты) определяются через интерфейсы, которые часто описываются при помощи языка определения интерфейсов. Описание интерфейса точно отражает синтаксис служб: имена доступных функций, типы параметров, возвращаемых значений и т.п. Сложнее формально описать семантику служб. На практике эти описания задаются неформально, средствами естественного языка. Открытые РС должны иметь такие свойства как: интероперабильность (способность к взаимодействию), переносимость (из одной системы в другую без изменения интерфейсов), гибкость – легкость конфигурирования системы, состоящей из разных компонентов.