При построении современных информационных систем пользователи редко ограничиваются одним компьютером с одной базой данных (БД). Гораздо чаще приходится использовать многосерверные архитектуры. Причины этого кроются в задачах, которые приходится решать, и в архитектурах создаваемых прикладных систем. Например, типичная архитектура информационной системы крупного предприятия имеет такие элементы, как центральная БД и БД филиалов или регионов. И эти узлы должны обмениваться информацией. Другой пример – интеграция старых информационных систем, успешно работающих на предприятии, и вновь создаваемых на других компьютерах информационных систем. Типичный пример многосерверной архитектуры возникает и в тех случаях, когда в организации создается хранилище данных, собирающее информацию из нескольких оперативных систем, или для повышения надежности прикладной системы предприятие организует резервные информационные центры. Информацией могут обмениваются не только различные СУБД (возможно выпускаемые различными фирмами). Информацией должны обмениваться и приложения и пользователи. Причем они обмениваются не только информацией об изменении данных в одной из систем, но также информацией о выполненных транзакциях, произошедших событиях, сообщениями и т д.
Если в старых системах приложение, которому требовалась информация из другого приложения, кодировалось так, что оно просто время от времени явно запрашивало это второе приложение об изменениях, то в современных информационных системах необходимо, чтобы процесс обмена информацией происходил автоматически, не требовал программирования. Надо чтобы передавалась только та информация, которая нужна, в то время и в то место, когда и где она действительно нужна, не перегружая при этом сеть и исходную БД.
Многие компании для решения задачи обмена информацией приобретают специальные программные пакеты разных фирм для поддержки этих функций. В этом случае им приходится приобретать сервер репликации, пакет для работы с очередями сообщений, средства загрузки данных в хранилища и витрины данных, ПО для нотификации (извещения о событиях) и управления событиями и т д. Иногда достаточно приобрести только часть этих средств. Не будем говорить о стоимости этого дополнительного программного обеспечения и недостатках многих из этих пакетов. Главная проблема здесь – интеграция. Сложность интеграции этих разнородных систем с различной архитектурой, языками, средствами доступа и т д настолько велика, что большинство интеграционных проектов оканчивается неудачей.
Пользователям СУБД Oracle несколько проще, поскольку средства для репликации, обмена сообщениями, организации резервной БД, захвата изменений и загрузки хранилищ и витрин данных входят в состав сервера Oracle 9i без дополнительной платы (см. табл. 1). Однако и у такого подхода есть много недостатков.
Купить у разных фирм | Oracle |
Replication Tools | Advanced Replication |
Messaging Software | Advanced Queueing |
Warehouse Loaders | CMC + Loader + WB |
HA, Performance SW | Standby |
Middleware | Integration in iAS |
Event Management apps | ---- |
Notification apps | ---- |