Технологии распределенной обработки данных

Масштабируемость

Открытость и гибкость

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

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

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

Масштабируемость системы может измеряться по трем различным показателям.

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

б) Географическая масштабируемость, то есть пользователи и ресурсы могут быть разнесены в пространстве.

в) Масштабируемость в административном смысле, то есть система должна быть проста в управлении при работе во множестве административно независимых организаций.

Одна из важных технологий масштабирования — распределение.

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

Распределение предполагает разбиение компонентов на мелкие части и последующее разнесение этих частей по системе.

Хорошим примером распределения является система доменных имен Интернета — DNS (рис. 4.2.). Пространство DNS-имен организовано иерархически, в виде дерева доменов, которые разбиты на неперекрывающиеся зоны,. Имена каждой зоны обрабатываются одним сервером имен. Чтобы получить IP-адрес хоста, имеющего доменное имя www.zil.mnt.ru, сначала происходит обращение к серверу имен зоны.ru, который возвращает адрес сервера имен зоны.mnt.ru, который, в свою очередь, вернет адрес zil.mnt.ru. Этот сервер способен обработать последнюю часть имени и вернуть адрес соответствующего хоста.

Распределенная база данных — это БД, разделенная на логически связанные фрагменты, которые размещены на различных узлах сети.

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

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

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

Основные условия и требования к распределенной обработке данных:

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

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

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

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

4. Поддержка распределенных запросов. Пользователь должен иметь возможность объединять данные из любых баз, даже если они размещены в разных системах.

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

6. Поддержка распределенных транзакций. СУБД должна выполнять транзакции, выходящие за рамки одной вычислительной системы, и поддерживать целостность распределенной БД даже при возникновении отказов как в отдельных системах, так и в сети.

7. Безопасность. Защита всей системы от несанкционированного доступа.

8. Универсальность доступа. СУБД должна обеспечивать единую методику доступа ко всем данным.

Следует отметить, что распределенная обработка данных не обязательно выполняется в распределенной системе в полном смысле этого слова (т.е. требование сокрытия сетевой природы системы не является обязательным).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: