Модель удаленного доступа к данным

 

Модель удаленного доступа к данным основана на учете специфики размещения и физического манипулирования дан­ных во внешней памяти для реляционных СУБД. В RDA-модели компонент доступа к данным в СУБД полностью отделен от двух других компонентов (компонента представления и при­кладного компонента) и размещается на сервере системы. Ком­понент доступа к данным реализуется в виде самостоятельной программной части СУБД, называемой SQL-сервером, и инстал­лируется на вычислительной установке сервера системы. Фун­кции SQL-сервера ограничиваются низкоуровневыми операци­ями по организации, размещению, хранению и манипулирова­нию данными в дисковой памяти сервера. Иначе говоря, SQL-сервер играет роль машины данных. Схема RDA-модели приведена на рис. 2.4.

 

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

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

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

Другим, может быть неявным, достоинством RDA-модели является унификация интерфейса взаимодействия приклад­ных компонентов информационных систем с общими данны­ми. Такое взаимодействие стандартизовано в рамках языка SQL специальным протоколом ODBC (Open Database Connectivity – открытый доступ к базам данных), играющим важную роль в обеспечении интероперабельности, т. е. независимости от типа СУБД на клиентских установках в распределенных системах. Интероперабельность (многопротокольностъ) СУБД –способность СУБД обслуживать прикладные программы, первоначально ориентированные на разные типы СУБД. Иначе го­воря, специальный компонент ядра СУБД на сервере (так на­зываемый драйвер ODBC) способен воспринимать, обрабаты­вать запросы и направлять результаты их обработки на клиен­тские установки, функционирующие под управлением реляционных СУБД других, не “родных” типов. Такая возможность суще­ственно повышает гибкость в создании распределенных инфор­мационных систем на базе интеграции уже существующих в какой-либо организации локальных баз данных под управле­нием настольных или другого типа реляционных СУБД. Спе­циальные драйверы ODBC могут обеспечить возможность ис­пользования настольной СУБД в качестве клиента SQL-серве­ра “тяжелой” многопользовательской клиент-серверной СУБД.

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