Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


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




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

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

       
 
   


Пользователи Пользователи

 

       
 
   

 


Клиенты Клиенты

Сервер Сервер

       
 
   
 

 

 


База данных (часть 1) База данных (часть 2)

 
 

 


Пользователь

 
 

 


Клиенты

Сервер

 
 


 

 

База данных (часть 3)

 

Рис. 10. Распределенная база данных [ 2 ]

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

Классифицируют гомогенные и гетерогенные распределенные базы данных [ 12 ]. В гомогенных распределенных базах данных в узлах системы используются СУБД одного типа, в гетерогенных – различных типов.

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

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

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

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

При использовании в работе архитектуры «клиент-сервер» часто необходимо решать проблему унифицированного доступа к данным, созданным различными СУБД. Эта проблема решается с помощью стандартного интерфейса ODBC (Open Database Connectivity).

На компьютере клиенте должна быть установлена операционная система с интерфейсом ODBC. СУБД или приложение, обращающиеся к данным, созданным в другой среде, получают к ним доступ с помощью вызова на языке SQL стандартных функций интерфейса ODBC. При этом подключается необходимый драйвер, соответствующий формату данных СУБД [ 15 ].

 

4.3. Модели «клиент-сервер»

 

Технологии работы с базами данных предусматривают выполнение следующих основных функций:

1. Ввод и отображение данных.

2. Решение прикладных задач.

3. Управление информационными ресурсами (реализуется СУБД).

В зависимости от распределения перечисленных функций между клиентом и сервером выделяют несколько различных моделей «клиент-сервер».

Модель удаленного управления данными (файлового сервера File Server, FS)

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

 

Клиент Сервер База данных

 

       
 
Ввод и отображение данных Решение прикладных задач СУБД
   
 


Система управления файлами
Файловые команды

         
   
     
 
 
 

 


Блоки данных

 

 

Рис. 11. Модель файлового сервера

 

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

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

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

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

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

Несмотря на отмеченные недостатки, модель файлового сервера положена в основу архитектуры большинства настольных СУБД: MS Access, Paradox, FoxPro и т. д.

Модель удаленного доступа к данным (Remote Data Access, RDA)

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

 


Клиент Сервер База данных

       
 
Ввод и отображение данных Решение прикладных задач
   
 


СУБД
SQL запросы

           
   
 
   
 
 

 


Результаты запросов

 

Рис. 12. Модель удаленного доступа

 

В процессе работы клиент обращается к серверу с запросами на языке SQL (Structured Query Language – язык структурированных запросов). Ответы на эти запросы представляют собой не блоки данных большого объема, часто включающие излишнюю информацию, а конкретные данные, необходимые приложению для решения прикладной задачи.

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

Модель сервера баз данных (DataBase Server, DBS)

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

 

Клиент Сервер База данных

Реализация хранимых процедур СУБД
Вызов

Ввод и отображение данных
хранимых процедур

           
 
 
   
 
   

 


Результаты

выполнения

процедур

 

Рис. 13. Модель сервера баз данных

 

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

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

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

Модель сервера баз данных применяется в СУБД MS SQL Server, Oracle, Informix, Ingress и т. д.

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

Модель сервера приложений (Application Server, AS)

Эта модель позволяет уменьшить нагрузку на сервер. В отличие от рассмотренных двухуровневых моделей она является трехуровневой (рис. 14):

 





Поделиться с друзьями:


Дата добавления: 2016-12-18; Мы поможем в написании ваших работ!; просмотров: 1204 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Студент может не знать в двух случаях: не знал, или забыл. © Неизвестно
==> читать все изречения...

2754 - | 2314 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.009 с.