Современные крупные организации, прошедшие долгую историю развития информационных систем (ИС), обычно располагают арсеналом компьютерных приложений, автоматизирующих отдельные аспекты их деятельности. Для территориально распределенных организаций, состоящих из многих подразделений, типична автономная работа программных комплексов.
Задачи создания и поддержания единого информационного пространства вытекают из стремления руководства сделать организации более эффективными, управляемыми и прозрачными. Такие задачи можно решать несколькими способами. Для организаций с типичной схемой функционирования (например, коммерческие компании) может подойти вариант внедрения единой интегрированной системы управления ресурсами. Для сложных организаций с нестандартными процессами, желающих сохранить инвестиции в программные системы, в том числе собственной разработки, предлагаются инфраструктурные решения, решающие вопросы оперативного обмена данными между информационными системами организации.
Задачи взаимного информационного обмена, к сожалению, часто решаются за счет временных мер, например, экспорта/ импорта данных через промежуточные файлы, установления репликационных связей между базами данных, обмена пакетами через среды передачи сообщений, такие как Oracle9i Advanced Queueing или MQ Series. Сосредоточенность на технологических аспектах передачи данных, характерная для проектов на основе MQ Series или Tibco, не позволяет в ряде случаев охватить сложность проекта и спланировать его реализацию в полном объеме.
Современное программное обеспечение Oracle9i Application Server Integration, позволяет применить системный подход и обратить внимание на следующие вопросы интеграции:
Множественность источников
Способ попарного объединения систем за счет программных мостов или обмена данными через текстовые файлы не подходит, если в информационном пространстве находятся более трех-четырех комплексов. Надежная управляемая среда интеграции может быть реализована только при работе через выделенный концентратор/ маршрутизатор потоков данных (integration hub) со свойствами отказоустойчивости, мониторинга, журналирования, анализа статистики и т.д.
Варианты представления данных в различных ИС
Для хранения одной и той же информации в разных системах, как правило, предлагаются отличающиеся модели данных. К примеру, адрес физического или юридического лица может быть представлен в базе данных единой текстовой строкой или разбит на поля "Индекс", "Город" и т.п.; в свою очередь, названия городов могут указываться текстом, а могут привязываться к справочникам; наконец, справочники в разных информационных системах могут использовать альтернативную кодификацию. Системный подход требует внедрения единой, так называемой "референсной" модели данных для каждого элемента информации. При работе сервера интеграции преобразования данных проходят между форматами представления разных ИС и референсной моделью (Common View), а не между друг другом. Тем самым, не только сокращается количество возможных пар преобразования, но и появляется возможность придать проекту интеграции гранулированность и управляемость, четко разграничив зоны ответственности участников проекта и распараллелив их работу.
Реализация интеллектуального диалога компьютерных систем
В редком случае взаимодействие функционирующих систем можно свести к операциям экспорта и импорта данных. Обмен данными может включать несколько циклов согласования/ подтверждения. В зависимости от типа событий или содержания информации, подлежащей обмену, часто требуется нестандартная маршрутизация с промежуточными преобразованиями. Наконец, в ходе передачи данных может потребоваться вмешательство оператора или лица, обладающего особыми полномочиями. Современные системы интеграции, к числу которых принадлежит Oracle9iAS Integration, в обязательном порядке включают средства организации потоков работ (workflow).
Сохранение модели интеграции
Временные подсистемы обмена данными, создаваемые под конкретные сиюминутные задачи, часто реализуются как монолитный программный код. Между тем, объединение в единый пакет кода, ответственного за детали взаимодействия с объединяемыми ИС, элементов трансформации и маршрутизацию данных, является крайне нежелательным с точки зрения перспектив развития интеграционного комплекса. Со временем изменятся версии, архитектура компьютерных систем, появятся новые протоколы и стандарты, сменится команда разработчиков. Сохранение референсной модели, алгоритмов трансформации данных, сценариев взаимодействия систем является ключевым условием долговременного эффективного использования интеграционного программного обеспечения.
При построении продукта Oracle9i Application Server Integration использовалась модель централизованного сервера интеграции "Hub and Spoke", подразумевающая следующее:
1) в интеграционном процессе могут участвовать любые информационные системы, доступ к которым возможен программным способом; они обмениваются данными по мере возникновения событий;
2) порция обмена данными, сообщение – это информация в формате XML; низкоуровневые детали взаимодействия с конкретной информационной системой локализованы в специальном программном коде (адаптере); с продуктом поставляются адаптеры для СУБД Oracle9i, наиболее известных пакетов автоматизации бизнеса, таких как Oracle E-Business Suite, SAP R/3, адаптеры для связи по стандартным протоколам (ftp, http, smtp) и набор разработчика заказных адаптеров;
3) через адаптеры сообщения поступают в очередь; в качестве среды передачи, накопления и маршрутизации сообщений используется Oracle9i Advanced Queueing; переданные данные приводятся к единой информационной модели Common View;
4) информация о том или ином событии в конктетной ИС может интересовать несколько других информационных систем; для регистрации перекрестных информационных зависимостей и правильной маршрутизации сообщений используется модель публикации и подписки (publish-subscribe);
5) полученные сообщения могут порождать сложные процессы обработки данных; за алгоритмизацию и управление процессами отвечает компонент Oracle9i Workflow;
6) сообщения, перенаправленные в другие информационные системы, проходят соответствующие адаптеры и достигают конечной цели;
7) все процессы, происходящие в интеграционном сервере, оставляют свои следы в журналах; текущее состояние концентратора, а также детали прошедших операций, просматриваются в средстве управления Oracle9i Enterprise Manager.
Схема работы Oracle9i InterConnect представлена на рис.1
Рис.1. Схема работы Oracle9iAS InterConnect
Продукт Oracle9i Application Server InterConnect интенсивно использует технологические возможности программных продуктов Oracle9i: Oracle9i Database, Advanced Queuing, Application Server Infrastructure. Особого внимания заслуживает компонент Oracle9i Advanced Queueing (AQ). Он хорошо зарекомендовал себя в технологических проектах Oracle, обеспечивая аналогичную или лучшую функциональность по сравнению с конкурирующими продуктами, такими как IBM MQ Series или Tibco. К достоинствам AQ следукт отнести:
1) возможность доставки сообщений как от абонента к абоненту ("точка-точка"), так и по схеме "публикация-подписка";
2) использование единой с сервером модели данных, безопасности и транзакций;
3) хранение сообщений в СУБД, гарантирующее масштабируемость, защиту от сбоев, наличие документированных программных интерфейсов, возможность сохранения истории, аудита и последующего анализа;
4) возможность приоритетой доставки сообщений;
5) интеграция с Oracle9i Workflow для сложной обработки сообщений и рассылки уведомлений по электронной почте;
6) решение проблемы межсетевых экранов; сообщения Advanced Queueing могут при необходимости покидать пределы корпоративной сети и достигать других сетей по интернет-протоколам.
Глеб Ладыженский, Oracle СНГ/Россия
Руководитель отдела технического консалтинга
тел. +7 (095) 721-32-21
e-mail: Gleb.Ladyzhensky@oracle.com