482______________________________________________Глава 9

"а

Многоярусные базы данных — это новый бурно развивающийся способ обра-
ботки данных в сети. Иногда (в частности, в документации C++Builder) этот способ
организации баз данных называется multi-tier — многонитевые. В этом термине
под нитью понимается один из множества потоков данных, обменивающихся одно-
временно с базой данных.

Наиболее распространен трехярусный вариант:

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

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

• На третьем уровне расположен удаленный сервер баз данных, принимающий

информацию от серверов приложений и управляющий ими.

Подобную концепцию обработки данных пропагандируют, в частности, фир-
мы Oracle и Sun. Первый, элементарный уровень состоит из «тонких клиентов», то
есть несложных терминалов, предназначенных, в основном, для ввода — вывода.
Второй, средний (middleware) уровень — это рабочие станции и серверы приложе-
ний, то есть значительно более серьезные машины, на которых выполняются про-
граммы, критичные к загрузке процессора. Третий и последний уровень — мощ-
ные специализированные серверы баз данных.

Это наиболее сложная и гибкая организация баз данных. C++Builder обеспе-
чивает в основном создание приложений для первых двух уровней этой системы.
При этом надо отметить, что на нижнем уровне — на компьютерах пользователя
не требуется установки Borland Database Engine (BDE) — системы, являющейся в
C++Builder посредником между приложениями и базами данных. В этом заключа
ется одно из преимуществ многоярусных распределенных баз данных.

Вопросы построения многоярусных баз данных достаточно специфичны и в
этой книге не рассматриваются. Соответственно не будут рассматриваться и
связанные с построением таких баз данных компоненты Provider, ClientDataSet.
Remote Server и др.

9.1.3 Технологии СОМ и CORBA

Для создания распределенных СУБД в настоящее время используются в осноь
ном две технологии: СОМ и CORBA. Кроме того в связи с бурным развитием Ин-
тернет все большее значение приобретает технология Web, которая, возможно, в
будущем станет определяющей.

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

Технология СОМ (компонентная модель объекта) разработана корпорацией
Microsoft. Ее назначение — предоставление возможности одной программе (клиен-
ту) работать с объектом другой программы (сервера). СОМ — это модель объекта,
которая предусматривает полную совместимость во взаимодействии между компо-
нентами, написанными разными компаниями и на разных языках. При этом кли-
ент и сервер могут располагаться на разных компьютерах.

На СОМ основаны такие технологии Microsoft, как OLE, Automation OLE, Ac-
tiveX, OCX. На СОМ построен, например, весь интерфейс Windows 98.

СОМ определяет унифицированный двоичный интерфейс, полностью незави-
симый от языка программирования, использованного при реализации компонен-
та. Компонент, написанный в соответствии со спецификациями двоичного интер-
фейса СОМ, может вступать во взаимодействие с другим компонентом, не зная в
действительности ничего о реализации последнего.