Главная » SQL, Базы данных » РАСПРЕДЕЛЕННАЯ ОБРАБОТКА В БАЗАХ ДАННЫХ

0

Как было указано в разделе 2.10, средства распределенной обработки позволяют соединить отдельные компьютеры в коммуникационную сеть (такую как Internet) для организации совместного решения общей задачи обработки данных на нескольких компьютерах сети. (Термин параллельная обработка используется практически в том же смысле, но в параллельных системах взаимодействующие компьютеры должны быть расположены физически достаточно близко, тогда как для распределенной системы это вовсе не обязательно, и отдельные компьютеры могут быть удалены на большие расстояния.) Взаимодействие между компьютерами осуществляется с помощью специального программного обеспечения, предназначенного для управления сетью, которое может представлять собой некоторое расширение диспетчера передачи данных (см. раздел 2.9), но чаще всего применяется в виде отдельного программного компонента.

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

Как уже отмечалось в конце раздела 2.10, термин "клиент/сервер", несмотря на то что он, строго говоря, касается исключительно архитектуры приложений, фактически чаще всего служит для обозначения структуры, в которой клиент и сервер запускаются на разных компьютерах (см. рис. 2.6). И действительно, существует множество доводов в пользу подобной схемы.

■  Главным доводом является возможность организации параллельной обработки.

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

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

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

Рис. 2.8. Система, в которой каждый компьютер одновременно является и клиентом, и сервером

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

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

2.15. РЕЗЮМЕ

В этой главе системы баз данных рассматривались с точки зрения их общей архитектуры. Здесь была описана архитектура ANSI/SPARC, которая делит систему баз данных на три уровня следующим образом: внутренний уровень,  наиболее близкий к физическому хранению (т.е. учитывающий способ, с помощью которого данные сохраняются физически); внешний уровень, наиболее близкий к пользователям (т.е. имеющий отношение к способу представления данных для отдельных пользователей); концептуальный уровень, который является  промежуточным между двумя предыдущими (он предоставляет обобщенное представление данных). Восприятие данных на каждом из уровней описывается с помощью схемы (или нескольких схем в случае внешнего уровня). Отображения описывают соответствие между заданной внешней и концептуальной, а также между концептуальной и внутренней схемами. Эти отображения служат основой, соответственно, логической и физической независимости от данных.

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

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

входит также реализация запросов пользователей, написанных на языке  определения

данных или языке обработки данных. Функцией СУБД является и поддержка  словаря данных.

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

простейший вариант распределенной обработки данных. В общем случае каждый сервер

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

Источник: Дейт К. Дж., Введение в системы баз данных, 8-е издание.: Пер. с англ. — М.: Издательский дом «Вильямс», 2005. — 1328 с.: ил. — Парал. тит. англ.

По теме:

  • Комментарии