Распределенные информационные системы

Автор работы: Пользователь скрыл имя, 05 Апреля 2011 в 11:14, реферат

Описание работы

распределенные ИС: понятие, классификация, выбор ИС

Содержание работы

ВВЕДЕНИЕ 4
1.ПОНЯТИЕ РАСПРЕДЕЛЕННЫХ ИС 6
1.1. Предпосылки создания распределенных ИС 6
1.2. Понятие распределенных информационных систем 8
1.3. Средства работы с распределенными данными 11
2. РАСПРЕДЕЛЕННЫЕ БАЗЫ ДАННЫХ 13
2.1. Основные принципы 13
2.2 Типы распределенных БД 15
2.3. Назначение и принцип работы распределенной БД 16
3. ПРИМЕРЫ РАСПРЕДЕЛЕННЫХ СИСТЕМ 21
ЗАКЛЮЧЕНИЕ 25
ЛИТЕРАТУРА 26

Файлы: 1 файл

распределенные ИС.doc

— 135.50 Кб (Скачать файл)

 

2. РАСПРЕДЕЛЕННЫЕ  БАЗЫ ДАННЫХ

2.1. Основные  принципы 

     Распределённые  базы данных (РБД) — совокупность логически взаимосвязанных баз данных, распределённых в компьютерной сети.

РБД состоит  из набора узлов, связанных коммуникационной сетью, в которой:

     а)каждый узел — это полноценная СУБД сама по себе;

     б)узлы взаимодействуют между собой  таким образом, что пользователь любого из них может получить доступ к любым данным в сети так, как  будто они находятся на его  собственном узле [5].

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

     Фундаментальный принцип создания распределённых баз  данных («правило 0»): Для пользователя распределённая система должна выглядеть  так же, как нераспределённая система.

     Фундаментальный принцип имеет следствием определённые дополнительные правила или цели. Таких целей всего двенадцать:

     1.Локальная  независимость. Узлы в распределённой  системе должны быть независимы, или автономны. Локальная независимость означает, что все операции на узле контролируются этим узлом.

     2.Отсутствие  опоры на центральный узел. Локальная  независимость предполагает, что  все узлы в распределённой  системе должны рассматриваться  как равные. Поэтому не должно  быть никаких обращений к «центральному» или «главному» узлу с целью получения некоторого централизованного сервиса.

     3.Непрерывное  функционирование. Распределённые  системы должны предоставлять  более высокую степень надёжности  и доступности.

     4.Независимость  от расположения. Пользователи не должны знать, где именно данные хранятся физически и должны поступать так, как если бы все данные хранились на их собственном локальном узле.

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

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

     7.Обработка  распределённых запросов. Суть в  том, что для запроса может  потребоваться обращение к нескольким  узлам. В такой системе может  быть много возможных способов  пересылки данных, позволяющих выполнить рассматриваемый запрос.

     8.Управление  распределёнными транзакциями. Существует 2 главных аспекта управления  транзакциями: управление восстановлением  и управление параллельностью  обработки. Что касается управления  восстановлением, то чтобы обеспечить атомарность транзакции в распределённой среде, система должна гарантировать, что все множество относящихся к данной транзакции агентов (агент — процесс, который выполняется для данной транзакции на отдельном узле) или зафиксировало свои результаты, или выполнило откат. Что касается управления параллельностью, то оно в большинстве распределённых систем базируется на механизме блокирования, точно так, как и в нераспределённых системах.

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

     10.Независимость  от операционной системы. Возможность  функционирования СУБД под различными операционными системами.

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

     12.Независимость  от типа СУБД. Необходимо, чтобы  экземпляры СУБД на различных  узлах все вместе поддерживали  один и тот же интерфейс,  и совсем необязательно, чтобы  это были копии одной и той  же версии СУБД [6].

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

 

2.2. Типы  распределенных БД 

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

     Помимо  вышеназванных типов распределенных баз данных можно выделить следующие:

     1) Распределённые Базы Данных

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

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

     4) Мультибазы с общим языком  доступа - распределённые среды управления с технологией "клиент-сервер"

     5) Интероперабельные системы - это  системы, в которых сами приложения, выполняемые в среде той или  иной СУБД, ответственны за интерфейсы  между различными средами приложения, независимо от того, являются  они однородными или неоднородными. Системы ориентированы главным образом на обмен данными. Дальнейшее развитие этих систем является объектно-ориентированные БД [7].

 

      2.3. Назначение и принцип работы распределенной БД 

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

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

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

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

Рис.2.1. Принцип работы БД 

     Узел 1 является корневым для всей распределенной базы и главным узлом для подчиненных  ему второму и третьему. Второй узел является главным узлом для  подчиненных ему четвертому и  пятому. Третий узел будет главным  для подчиненных ему шестому, седьмому и восьмому.

Любой узел распределенной базы данных (УРБД) "видит" только узлы, напрямую связанные с ним. С  такими узлами он и осуществляет обмен  данными.

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

     Внесение  изменений в конфигурацию информационной базы возможно только в одном (корневом) узле УРБД, причем изменения конфигурации передаются от главного узла к подчиненным. На схеме направления, по которым передаются изменения конфигурации, обозначены красными стрелочками [9].

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

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

     При изменении конфигурации базы информация об изменениях распространяется в сообщениях обмена вместе с изменениями данных.

     Обмен данными между базами производится следующим образом:

     1)В базе-источнике система определяет список изменённых объектов за время, прошедшее с предыдущего сеанса выгрузки данных.

     2)По данному списку система формирует XML-пакет, который передается в базу-приемник.

     Для того чтобы сформировать пакет система  обращается к измененным объектам базы данных. При обращении система  блокирует данные объекты.

     3) XML-пакет передается в базу-приемник.

     В базе-приемнике XML-пакет разворачивается  и изменения, содержащиеся в нем, вносятся в базу.

     Все изменения записываются в рамках одной транзакции, при этом все  измененные объекты блокируются.

 

3. ПРИМЕРЫ РАСПРЕДЕЛЕННЫХ СИСТЕМ 

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

Среди многочисленных прототипов и научно-исследовательских  систем следует упомянуть систему  SDD-1, созданную в конце 70-х -- начале 80-х годов в научно-исследовательском отделении фирмы Computer Corporation of America; систему R*, которая является распределенной версией системы System R и создана в начале 80-х годов фирмой IBM; а также систему Distributed INGRES, которая является распределенной версией системы INGRES и создана также в начале 80-х годов в Калифорнийском университете в Беркли.

     Что касается коммерческих продуктов, то в  настоящее время в большинстве  реляционных систем предусмотрены  разные виды поддержки использования  распределенных баз данных с разной степенью функциональности. Среди таких  систем наиболее известны система INGRES/STAR отделения Ingres Division фирмы The ASK Group Inc., система ORACLE фирмы Oracle Corporation, а также модуль распределенной работы системы DB2 фирмы IBM.

Информация о работе Распределенные информационные системы