Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lect8.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
156.67 Кб
Скачать

Автоматическая трансляция кодов

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

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

Именно поэтому для современных распределенных СУБД важно иметь многопотоковый коммуникационный сервер, который берет на себя задачи сетевой поддержки множества клиентов, одновременно обращающихся к серверу. На каждом узле сети он поддерживает множество пар соединений "клиент-сервер" и позволяет существовать одновременно множеству независимых сеансов работы с базами данных.

Межоперабельность (или интероперабельность)

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

Для СУБД это качество означает следующее:

  • возможность приложений, созданных средствами разработки данной СУБД, оперировать над базами данных в "чужом" формате так, как будто это собственные базы данных;

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

Первое достигается использованием шлюзов, второе - использованием интерфейса ODBC.

Распределенные базы данных

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

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

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

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

Рассмотрим пример такой системы.

Глобальная база данных распределена по трем узлам. Узел A - это компьютер VAX 6000/560 с ОС VMS и СУБД Rdb, где расположена локальная БД Предприятия в формате Rdb. Второй (узел B) представляет собой компьютер SUN Sparc Server 1000 под управлением операционной системы Solaris. На нем функционирует СУБД Ingres и находится локальная БД Склад в формате INGRES. В качестве узла C выступает mainframe IBM c операционной системой MVS и СУБД DB2. На нем расположена локальная БД Инструмент в формате DB2.

Сервер распределенной БД - компонент СУБД Ingres - выполняется на узле B. Коммуникационные серверы Ingres работают на всех трех узлах. Узлы A и B используют для взаимодействия протокол TCP/IP, в то время как узлы B и C общаются в соответствии со стандартом SNA.

Локальные БД на всех трех узлах управляются абсолютно автономно. Распределенная БД Производство содержит таблицы из всех трех локальных БД. Для доступа сервера распределенной БД к БД Предприятия необходим шлюз из Ingres в Rdb, а для доступа к БД Инструмент - шлюз из Ingres в DB2.

Шлюз из Ingres в DB2 позволяет манипулировать данными в формате DB2 так, как будто они - данные в формате Ingres. Шлюз из Ingres в Rdb позволяет оперировать с данными в формате Rdb так, как будто они - данные в формате Ingres.

Все эти детали не видны конечному пользователю. Он работает с БД Производство так, как будто это централизованная БД Ingres. Это и есть полностью прозрачный доступ к данным.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]