Лекция№13 Распределенные базы данных.
Технология распределенных баз данных, получившая в настоящее время широкое распространение, способствует переходу от централизованной обработки данных к децентрализованной.
Основные концепции
Распределенная база данных - набор логически связанных между собой разделяемых данных (и их описаний), которые физически распределены в некоторой компьютерной сети.
Из этого вытекает следующее определение.
Распределенная СУБД - программный комплекс, предназначенный для управления распределенными базами данных и позволяющий сделать распределенность информации прозрачной для конечного пользователя.
Система управления распределенными базами данных (СУРБД) состоит из единой логической базы данных, разделенной на некоторое количество фрагментов. Каждый фрагмент базы данных сохраняется на одном или нескольких компьютерах, которые соединены между собой линиями связи и каждый из которых работает под управлением отдельной СУБД. Любой из сайтов способен независимо обрабатывать запросы пользователей, требующие доступа к локально сохраняемым данным (что создает определенную степень локальной автономии), а также способен обрабатывать данные, сохраняемые на других компьютерах сети.
Пользователи взаимодействуют с распределенной базой данных через приложения. Приложения могут быть классифицированы как те, которые не требуют доступа к данным на других сайтах, и те, которые требуют подобного доступа. В распределенной СУБД должно существовать хотя бы одно глобальное приложение, поэтому любая СУРБД должна иметь следующие особенности.
-
Набор логически связанных разделяемых данных.
-
Сохраняемые данные разбиты на некоторое количество фрагментов.
-
Между фрагментами может быть организована репликация данных.
-
Фрагменты и их реплики распределены по различным сайтам.
-
Сайты связаны между собой сетевыми соединениями.
-
Работа с данными на каждом сайте управляется СУБД.
-
СУБД на каждом сайте способна поддерживать автономную работу локальных приложений.
-
СУБД каждого сайта поддерживает хотя бы одно глобальное приложение.
Из определения СУРБД следует, что для конечного пользователя распределенность системы должна быть совершенно прозрачна (невидима). Назначение обеспечения прозрачности состоит в том, чтобы распределенная система внешне вела себя точно так, как и централизованная. В некоторых случаях это требование называют основным принципом построения распределенных СУБД. Данный принцип требует предоставления конечному пользователю существенного диапазона функциональных возможностей.
Очень важно понимать различия, существующие между распределенными СУБД и распределенной обработкой данных.
Распределенная обработка - обработка с использованием централизованной базы данных, доступ к которой может осуществляться с различных компьютеров сети.
Гомогенные и гетерогенные распределенные СУБД
Распределенные СУБД можно классифицировать как гомогенные и гетерогенные. В гомогенных системах все сайты используют один и тот же тип СУБД. В гетерогенных системах на сайтах могут функционировать различные типы СУБД, использующие разные модели данных, т.е. гетерогенная система может включать сайты с реляционными, сетевыми, иерархическими или объектно-ориентированными СУБД.
Функции распределенных СУБД
Типичная СУРБД должна обеспечивать, по крайней мере, тот же набор функциональных возможностей, который определен для централизованных СУБД. Кроме того, СУРБД должна предоставлять следующий набор функциональных возможностей.
-
Расширенные службы установки соединений должны обеспечивать доступ к удаленным сайтам и позволять передавать запросы и данные между сайтами, входящими в сеть.
-
Расширенные средства ведения каталога, позволяющие сохранять сведения о распределении данных в сети.
-
Средства обработки распределенных запросов, включая механизмы оптимизации запросов и организации удаленного доступа.
-
Расширенные функции управления параллельностью, позволяющие поддерживать целостность реплицируемых данных.
-
Расширенные функции восстановления, учитывающие возможность отказов в работе отдельных сайтов и отказов линий связи.