Межоперабельность
В контексте DDB межоперабельность означает две вещи. Во-первых, - это качество, позволяющее
обмениваться данными между базами данных различных поставщиков. Как, например,
тиражировать данные из базы данных Informix в Oracle и наоборот? Известно, что штатные
средства тиражирования в составе данной конкретной СУБД позволяют переносить данные в
однородную базу. Так, средствами CA-Ingres/Replicator можно тиражировать данные только из
Ingres в Ingres. Как быть в неоднородной DDB? Ответом стало появление продуктов,
выполняющих тиражирование между разнородными базами данных.
Во-вторых, это возможность некоторого унифицированного доступа к данным в DDB из
приложения. Возможны как универсальные решения (стандарт ODBC), так и специализированные
подходы. Очевидный недостаток ODBC - недоступность для приложения многих полезных
механизмов каждой конкретной СУБД, поскольку они могут быть использованы в большинстве
случаев только через расширения SQL в диалекте языка данной СУБД, но в стандарте ODBC эти
расширения не поддерживаются.
Специальные подходы - это, например, использование шлюзов, позволяющее приложениям
оперировать над базами данных в "чужом" формате так, как будто это собственные базы данных.
Вообще, цель шлюза - организация доступа к унаследованным (legacy) базам данных и служит для
решения задач согласования форматов баз данных при переходе к какой-либо одной СУБД. Так,
если компания долгое время работала на СУБД IMS и затем решила перейти на Oracle, то ей
очевидно потребуется шлюз в IMS. Следовательно, шлюзы можно рассматривать как средство,
облегчающее миграцию, но не как универсальное средство межоперабельности в распределенной
системе. Вообще, универсального рецепта решения задачи межоперабельности в этом контексте не
существует - все определяется конкретной ситуацией, историей информационной системы и массой
других факторов. DDB конструирует архитектор, имеющий в своем арсенале отработанные
интеграционные средства, которых на рынке сейчас очень много.