СОВРЕМЕННЫЕ ТЕХНОЛОГИИ В ИНФОРМАЦИОННОМ ОБЕСПЕЧЕНИИ НАУКИ

ТЕХНОЛОГИИ ИНТЕГРАЦИИ
ИНФОРМАЦИОННЫХ СИСТЕМ
НА ОСНОВЕ СТАНДАРТОВ XML
И WEB-СЛУЖБ

А.В. Данилин
(Microsoft)

Введение

По оценке компании Gartner Group на каждый доллар, который организации тратят на разработку и внедрение прикладных информационных систем, приходится еще от пяти до двадцати долларов затрат, связанных с интеграцией с другими системами.

Архитектура интеграции приложений отличается от архитектуры одного приложения также, как планирование города отличается от архитектуры отдельного здания. Интеграция приложений - это обеспечение взаимодействия независимо спроектированных систем:

  • Прикладные системы "виртуальной организации" спроектированы различными независимыми людьми, разобщенными территориально, во времени и организационно

  • Нет никакого практического способа постоянной координации и информирования о независимых решениях

  • Несовместимость и избыточность данных и логики - обычное явление

Решение этих проблем было одной из движущих сил разработки технологий XML и Web-служб, и связанных с ними стандартов.

Первое и главное, что хотелось бы отметить, что все обсуждаемые ниже стандарты являются открытыми стандартами, в разработке которых принимают участие Интернет-сообщество и ведущие компании в области ИТ, такие как Microsoft, IBM и многие другие. Это важно, поскольку это снимает вопросы совместимости платформ от разных поставщиков.

Ниже перечислены три наиболее актуальные технологии интеграции прикладных систем:

  • Интеграционное программное обеспечение, основанное на ПО гарантированной пересылки сообщений между приложениями (Messaging Middleware) и Брокере Сообщений как стандартах интеграции корпоративных информационных систем во всем мире с конца 90-х годов

  • XML как универсальный формат информации/документов и обмена данными

  • Реализация подлежащих интеграции систем в виде Web-служб (Web-сервисов)

Ключевыми стандартами Web-служб являются:

Кратко процесс взаимодействия приложений в децентрализованной, распределенной среде выглядит следующим образом. Приложение, которому требуется доступ к Web-службе, использует регистр (каталог) UDDI для обнаружения нужной ему Web-службы (информация в регистре UDDI предварительно должна быть опубликована организацией, желающей сделать её Web-службу публично доступной). В этом же регистре UDDI приложение определяет необходимые для взаимодействия интерфейсы. Интерфейсы публикуются с использованием стандарта WSDL. После этого приложение вызывает Web-службу, используя интерфейс WSDL, и используя SOAP и XML как конверты и форматы для передачи информации, а протоколы HTTP и SMTP в качестве транспорта для её доставки.

Иначе говоря, технология Web-служб предоставляет общий формат данных (XML), способ доставки и транспортировки данных через Интернет и Интранет (SOAP), а также способ обнаружения (UDDI) и описания (WSDL) сервисов.

Базовые идеи применения XML и Web-служб для организации межведомственного взаимодействия

Ниже перечислены основные идеи применения XML и Web-служб для организации межведомственного взаимодействия:

  • Web-службы как основной механизм интеграции

  • Отдельные прикладные системы могут быть реализованы как Web-службы

  • XML как стандарт обмена данными

  • Возможность создания публично доступных регистров ведомственных систем на федеральном, региональном и местном уровнях на основе UDDI

  • "Нежесткое связывание" информационных систем на основе инфраструктуры пересылки сообщений в виде XML-документов

  • Итог: возможность межведомственного информационного обмена на основе регистров и XML как формата обмена

Таким образом, ключевой идеей, которая связана с использованием стандартов XML для интеграции информационных систем является использование подходов на основе Web-сервисов и регистров на основе стандартов UDDI.

В мире интеграции корпоративных информационных систем в конце 90-х годов стандартным подходом для такой интеграции стал подход, основанный на использовании программного обеспечения гарантированной пересылки сообщений между приложениями. Это то, что соответствует зарубежному термину "messaging". Примером такого ПО является Microsoft BizTalk Server.

Базовая идея этого ПО следующая. У Вас есть несколько приложений, связанных некоторой коммуникационной средой, возможно не очень надежной. Одно приложение (например, система документооборота A) должно переслать информацию/документ другому приложению (системе документооборота B). Система A передает документ серверу пересылки сообщений и "забывает" о нем. Сервер пересылки сообщений обеспечит гарантированную и однократную доставку информации до системы B.

Наличие одного узла, одной точки интеграции на основе брокера сообщений обеспечивает управляемый, линейный рост сложности задачи интеграции по мере подключения новых информационных систем. По-сути дела - это одна из задач, выполняемая Правительственным Шлюзом в Великобритании.

Брокер сообщений при этом выполняет не только маршрутизацию сообщений (которые являются XML-документами) между информационными системами ведомств, но и выполняет также задачу трансформации этих сообщений на основе соответствующих XML-схем для обеспечения совместимости информационных систем.

Компоненты брокера сообщений

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

Рис 1. Брокер сообщений

Сегодня брокеры сообщений могут объединять большое количество взаимодействующих систем. Результатом этого является то, что компания Gartner Group называет "Корпоративной нервной системой", т.е. инфраструктура брокера сообщений, к которой легко могут быть подключены по сути дела любые приложения и которая обеспечивает взаимодействие между ними в режиме, близком к реальному времени.

Брокер сообщений интегрирует гетерогенные приложения и хранилища данных и предоставляет три типа служб:

  • Пересылка сообщений и перемещение данных обеспечивает физический транспорт доставки сообщений между приложениями. Это может быть сделано на основе таких Интернет-протоколов, как Hypertext Transfer Protocol (HTTP) и традиционных систем пересылки сообщений, например Microsoft Messaging Queuing. Первые поколения этих технологий использовали собственные закрытые форматы для своих сообщений. В последнее время языком описания сообщений все больше становится XML.

  • Интеллектуальная маршрутизация, которая определяет для каждого сообщения то, к какому приложению оно должно попасть. Маршрутизация часто включает механизмы публикации и подписки, когда серверное приложение один раз "публикует" некоторое бизнес-событие для брокера сообщений, а определенное количество других бизнес-приложений, заинтересованных в данном событии, "подписываются" на него.

  • Трансформирование обеспечивает мапирование (определение соответствия) данных между потенциально различными семантиками одного приложения или разных приложений. Так, если одно приложение использует в формате своих данных буквы "М" и "Ж" для описания пола человека, а другое приложение использует для такого кодирования "1" и "0", то уровень трансформации брокера сообщений может мапировать информацию между приложениями, не меняя логику каждого из них. В более сложных ситуациях, когда одно приложение может ожидать 5 атрибутов в записи о клиенте, а другое приложение обеспечивает эти же атрибуты в двух различных записях баз данных, уровень трансформации может обеспечить мапирование между такими различными структурами данных.

Архитектура брокера сообщений может включать две дополнительных высокоуровневых службы:

  • Управление бизнес процессами (оркестрирование бизнес-процессов) доводит уровень интеллектуальной маршрутизации до возможностей автоматизации потоков работ (workflow), которые полностью обслуживают внутренние и внешние процессы;

  • Мониторинг процессов и событий превращает брокер сообщений в центр информационных потоков внутри и вне предприятия, а также обеспечивает функции анализа бизнес-операций в масштабе близком к реальному времени

Помимо этого, брокеры сообщений, как правило, поддерживают работу со специфическими адаптерами для различных типов приложений и данных:

  • адаптеры к веб-службам;

  • адаптеры к мониторам транзакций;

  • адаптеры к различным реляционным СУБД;

  • API-адаптеры для популярных коробочных приложений;

На рисунке ниже приведена техническая модель интеграции информационных систем на основе использования технологий брокера сообщений и веб-служб XML. При этом интеграционный шлюз (брокер сообщений) может обеспечивать не только маршрутизацию сообщений, но и реализовывать функции коллективного UDDI-регистра доступных информационных систем, а также реализовывать функции "брокера веб-служб", то есть обеспечивать механизм взаимодействия между информационными системами как веб-службами.

Рис 2. Техническая модель веб-служб XML как технологии интеграции.

Заключение

Комбинация традиционных технологий универсального брокера сообщений, XML как стандартного формата для информационного обмена и Web-служб дает широкие возможности для интеграции информационных систем и данных на основе открытых стандартов.