Файл: Построение распределенных информационных систем.pdf

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

Категория: Реферат

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

Добавлен: 29.10.2023

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

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

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

Министерство науки и высшего образования Российской Федерации
Федеральное государственное бюджетное образовательное учреждение высшего образования
«Воронежский государственный лесотехнический университет имени Г.Ф. Морозова»
Кафедра вычислительной техники и информационных систем
РЕФЕРАТ
на тему «Построение распределенных информационных систем»
09.04.02 Информационные системы и технологии
По дисциплине «Моделирование информационных систем»
Студент группы _ИС4-2021-ОЗМ___
(номер группы)
Руководитель, _к.т.н.
доц.
_________
(ученая степень, ученое звание)
___________
(подпись)
__________
(подпись)
Клишин И Ю
(инициалы и фамилия)
С.А Сазонова
(инициалы и фамилия)
Воронеж 2023

Оглавление
ВВЕДЕНИЕ .................................................................................................................................... 3 1. ОБЩЕЕ ПОНЯТИЕ РАСПРЕДЕЛЕННОЙ ИНФОРМАЦИОННОЙ СИСТЕМЫ.
АРХИТЕКТУРА ............................................................................................................................ 4 1.1 Распределенная информационная система, принцип построения сетей ........................... 4 1.2 Модели распределения при разработке распределенной системы ..................................... 7 1.3 Модель «Клиент-сервер» ........................................................................................................ 9 1.4 Тип архитектур «Клиент-сервер» ........................................................................................ 11
ЗАКЛЮЧЕНИЕ............................................................................................................................ 16
СПИСОК ЛИТЕРАТУРЫ ........................................................................................................... 18

ВВЕДЕНИЕ
Расширение практики использования информационных материалов в цифровом виде обусловлено эргономическими, функциональными и техническими преимуществами. Условная «цифра» заменила собой огромные массивы картотек, физических баз данных, хранилищ книг и прочих документально-справочных материалов. Однако задачи упорядочения, сегментации и классификации информации остались, а в некоторых аспектах и обострились. В контексте решения этой проблемы возникла и концепция распределенных информационных систем, в рамках которой предполагается четкая структуризация данных с учетом нюансов организации пользовательского взаимодействия с ними.
Распределенные ИС обеспечивают работу с данными, расположенными на разных серверах, различных аппаратно-программных платформах и хранящимися в различных форматах. Они легко расширяются, основаны на открытых стандартах и протоколах, обеспечивают интеграцию своих ресурсов с другими ИС, предоставляют пользователям простые интерфейсы.
Распределение данных позволяет, например, хранить в узле сети те данные, которые наиболее часто используются в этом узле. Такой подход облегчает и ускоряет работу с этими данными и оставляет возможность работать с остальными данными БД.
Рассмотрим основные сведения о распределенной информационной системе: опишем общие понятия, средства работы с данными, исследуем понятие распределенной базы данных, а также ее типов и основных принципов.


1. ОБЩЕЕ ПОНЯТИЕ РАСПРЕДЕЛЕННОЙ ИНФОРМАЦИОННОЙ
СИСТЕМЫ. АРХИТЕКТУРА
1.1 Распределенная информационная система, принцип построения сетей
Сегодня используются различные понятия и определения распределенной системы. Обобщая, их можно свести к общим определениям:
1.
Распределенной системой называется набор независимых компьютеров, представляющийся их пользователям единой системой;
2.
Распределенной информационной системой называется совокупность взаимодействующих друг с другом программных компонентов.
Каждый из них может рассматриваться как программный модуль
(приложение), исполняемый в рамках отдельного процесса.
Пользователи и приложения единообразно работают в распределенных системах независимо от того, когда и где происходит это взаимодействие.
При такой работе информационные системы должны иметь возможность скрывать от пользователей различия между компьютерами и способы связи между ними. Еще одной важной характеристикой распределенных систем является способность обеспечения единообразной работы пользователей и приложений в распределенных системах.
Распределенные системы должны сравнительно легко поддаваться расширению и масштабированию. Выход из строя одной из частей распределенной системы не должен приводить к сбою всей распределенной системы, и пользователей не должны об этом уведомлять. Для поддержания представления разных компьютеров и сетей в виде единой системы организация распределенной системы нередко включает в себя дополнительный уровень программного обеспечения, находящийся между прикладным уровнем и операционной системой. Данная распределенная система называется системой промежуточного уровня (middleware).

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

целостность и непротиворечивость ресурса. Прозрачность отказов заключается в обеспечении нормальной работы при наличии отказов или скрытии факта отказа без уведомления об этом пользователя. Например, при перегрузке веб-сервера браузер выжидает необходимое время, а затем сообщает о недоступности страницы.
Не все эти требования могут быть полностью реализованы в распределенных системах, т. к. обеспечение прозрачности влияет на производительность.
Открытая распределенная система предлагает службы, вызов которых требует использование стандартных синтаксиса и семантики. Например, соответствие в сетях формата сообщений формату протоколов.
Интерфейсы в распределенных системах определяют службы и компоненты, которые, как правило, описываются языком определения интерфейсов (Interface Definition Language, IDL). Интерфейс описывается с помощью синтаксиса служб – имен доступных функций, типов параметров, возвращаемых значений и др. Семантику служб описать сложнее, т. к. эти описания задаются средствами естественного языка.
Открытые распределенные системы должны обладать свойствами интероперабельности, т. е. способности к взаимодействию, возможности переноса из одной системы в другую без изменения интерфейса. Система должна обладать гибкостью и иметь возможность легкого конфигурирования.
Таким образом, открытые распределенные системы расширяются аппаратно и программно.
При построении открытых распределенных систем главным фактором является организация системы в виде наборов небольших, легко заменяемых и адаптируемых компонентов. Это позволяет определять интерфейсы как верхнего уровня, с которыми работают пользователи и приложения, так и интерфейсы между компонентами системы.
Масштабируемость (возможность расширения) системы может измеряться по трем различным показателям: размер, определяющий легкость
подключения к системе новых ресурсов и пользователей; площадь системы определяет ресурсы и пользователей, которые могут быть разнесены в пространстве; управление системой должно быть простым при работе в независимых организациях.
Масштабируемость распределенных систем влияет на производительность и может ее снижать. Практическая реализация масштабируемости, как правило, рассматривается наряду с такими требованиями как производительность и безопасность.
Примерами ограничения масштабируемости могут являться: о дин сервер на нескольких пользователей; телефонный справочник, доступный онлайн; организация маршрутизации данных, передаваемых по сети. Большие объемы данных передаются по множеству каналов, при этом используются децентрализованные алгоритмы.
1.2 Модели распределения при разработке распределенной системы
При разработке распределенной системы используются две модели:
1. распределенная файловая система, когда все объекты представляются в виде файлов;
2. система, основанная на удаленных вызовах процедур.
Примером файловой системы является файловая система Unix. Модель удаленных вызовов процедур основана на скрытии сетевого обмена, при этом процессы могут вызывать процедуры, находящиеся на удаленной машине.
При вызове процедуры и ее выполнении параметры передаются на удаленную машину, далее управление передается компьютеру-клиенту. Для пользователя это выглядит как обычный вызов процедуры.
Современные модели распределенных систем основаны на взаимодействии распределенных объектов. Примерами являются: DCOM и
CORBA. В распределенных объектах каждый объект реализует свой интерфейс, который скрывает все внутренние детали выполнения функций

системы от пользователя. Интерфейс основан на методах, реализуемых системой. Все, что видит процесс - это интерфейсы.
В системе WWW используется модель распределенных документов. В данной модели информация организуется в виде документов, размещенных, как правило, на удаленном сервере или на распределенных компьютерах- клиентах, при этом пользователь не видит, где размещен документ. Веб- страницы могут содержать гиперссылки на другие документы и страницы, видео, графику, звуковые файлы. При обращении к документу из адресной строки браузера формируется запрос серверу, на сервере выполняется код генерации страницы, веб-страница формируется «налету» и в окне браузера мы видим виртуальную страницу.
Для низкоуровневой пересылки сообщений по сети используются сервисы промежуточного уровня, которые предназначены для поддержки прозрачности доступа путем предоставления высокоуровневых средств связи.
Интерфейс транспортного уровня (IP) заменяется средствами прозрачного доступа к распределенным БД, файловым системам и веб-документам.
Общей службой для всех систем промежуточного уровня является именование (naming). Любой документ идентифицируется с помощью URL- адреса, содержащего имя хостинга, на котором находится документ с данным
URL.
Служба обеспечения сохранности данных реализуется механизмом распределенных транзакций.
Служба обеспечения защиты программ и данных наряду с требованием масштабируемости является одной из наиболее трудно реализуемых в распределенной системе.

1.3 Модель «Клиент-сервер»
В данной базовой модели распределенной системы все процессы обработки данных делятся на две взаимно перекрывающиеся группы.
Серверами называются любые процессы, реализующие, например, обработку удаленной файловой системы или распределенной базы данных. Сервер предоставляет свои ресурсы и хранимые данные удаленным рабочим станциям и одновременно может использовать их ресурсы и данные.
Клиентами называются процессы, посылающие запрос серверу на обработку данных с последующим ожиданием ответа от сервера. Клиент получает услуги сервера. В рамках модели «клиент – сервер» взаимодействие может быть синхронным и асинхронным. При синхронном взаимодействии клиент ожидает завершения обработки своего запроса сервером, а при асинхронном взаимодействии клиент посылает серверу запрос и, не дожидаясь ответа сервера, продолжает свою работу. Модель «клиент - сервер» является основой описания различных взаимодействий удаленных и распределенных систем.
Рисунок 1 Модель взаимодействия «клиент-сервер»
Между клиентом и сервером может не быть четкого разделения функций системы. Например, сервер распределенной базы данных, отвечающий за

хранение таблиц этой БД, может быть одновременно клиентом и передавать запросы на файловые серверы.
Рассмотрим логистические уровни взаимодействия пользователя с базой данных. Рисунок 2.
Рисунок 2. Логистические уровни приложения
На уровне клиента реализуется интерфейс.
На уровне функциональности реализуется бизнес-логика приложения. На уровне данных содержатся программы, их обрабатывающие. Этот уровень отличается требованием целостности данных. Когда приложение не работает, данные сохраняются в файле или базе данных для последующего их использования.
Данный уровень, как правило, реализуется на сервере.
Кроме сохранности на уровне данных обеспечивается поддержка целостности данных для различных приложений. Поддержание целостности данных означает, что на этом же уровне хранятся схемы базы данных, триггеры базы данных и хранимые процедуры.
Как правило, уровень данных реализуется в виде реляционной базы данных, что позволяет данным не зависеть от приложений. Реляционные базы данных в модели «клиент - сервер» позволяют отделить уровень обработки от уровня данных, при этом данные и их обработка рассматриваются независимо друг от друга.

1.4 Тип архитектур «Клиент-сервер»
При разделении системы на три логических уровня возникает проблем а физического распределения приложений по компьютерам-клиентам в модели
«клиент - сервер». Самой простой организацией является использование компьютера-клиента и сервера.
1. На рабочих станциях (клиентах) устанавливаются программы- клиенты, которые реализуют интерфейс.
2. На серверах реализуются все остальные уровни обработки и уровни данных.
В такой организации системы существует проблема, состоящая в том, что все операции происходят на сервере, при этом клиент используется как простой терминал. В этом случае система не будет являться распределенной.
На практике пользователям системы требуется доступ к одним и тем же данным. Разделить функции системы можно между несколькими компьютерами, а логические уровни приложений между одной серверной частью приложения. Серверная часть приложения отвечает за доступ к данным и может находиться на нескольких компьютерах с клиентскими частями, реализующими интерфейс пользователя. Такое разделение будет наиболее простым. Таким образом, логика приложения может быть отнесена как к серверу, так и клиентам либо разделена между ними.
Программные решения могут реализовываться в виде минимальных функций интерфейса пользователя на клиенте (тонкий клиент) или передавать клиенту всю работу с пользовательским интерфейсом (толстый клиент). В этих случаях графический интерфейс с помощью протокола приложения отделяется от приложений и связывается с остальной частью приложения, находящейся на сервере. Внешний интерфейс позволяет реализовать функцию предоставления интерфейса приложения.
Архитектура, построенная по описанному принципу, называется клиент-серверной или двухзвенной (рисунок 3). Аналогичные системы