EAI

Enterprise Application Integration (EAI), или интеграция корпоративных приложений, в последние годы становится одной из самых приоритетных задач для самых разных предприятий (см. PC Week/RE, N 35/2003, с. 37). Строго говоря, потребность в подобной интеграции появляется сразу после развертывания на предприятии второй прикладной системы, но особую остроту она приобретает по мере того, как на нем по мере развития накапливается множество приложений, функционирующих на разных программно-аппаратных и технологических платформах. Согласно IDC, рынок EAI, объем которого в нынешнем году должен составить 7,8 млрд. долл., устойчиво растет (см. диаграмму) и к 2006 г. достигнет отметки 15,7 млрд. долл. Неудивительно поэтому, что на него выходят все новые игроки. В начале ноября о подобном шаге объявила и известная в нашей стране как поставщик постреляционной СУБД Cache компания InterSystems. Для торжественной премьеры нового продукта Ensemble она выбрала знаменитый своими кинофестивалями французский город Канны, ставший счастливой стартовой площадкой для многих дебютантов.

Когда компания выходит на достаточно зрелый рынок, лидерами которого являются такие известные вендоры, как IBM, Tibco, Vitria, WebMethods и BEA Systems, невольно задаешься вопросом, какие козыри она может предъявить конкурентам и заказчикам. По мнению вице-президента InterSystems по стратегическому планированию Пола Грабшейда, неверна уже исходная посылка для этого вопроса: на самом деле рынок еще далек от зрелости и сильно фрагментирован. На нем нет ярко выраженных лидеров: доля занимающей первую позицию корпорации IBM составляет всего лишь 15%, а имена многих других фирм мало знакомы широкой общественности.

Пол Грабшейд: "Рынок EAI сильно фрагментирован

и, по сути, еще не сформирован"

Интересные данные привел в своем выступлении директор отделения European Software Infrastructure Research аналитической компании IDC Роб Хейлстоун. Как известно, основным достоинством сервера интеграции считается наличие центрального узла, называемого иногда интеграционным брокером. Благодаря ему не нужно создавать адаптеры для обеспечения взаимодействия каждого приложения с каждым, а достаточно иметь одни адаптер на приложение, умеющий контактировать с указанным брокером. Прекрасная, казалось бы, идея. Но почему тогда из всех интеграционных проектов лишь в 5% используется архитектура с EAI-брокером? Вот некоторые причины такого положения, выявленные в результате исследования IDC: применение классической интеграционной архитектуры требует высокой квалификации персонала, ориентировано на очень крупные предприятия, сопровождается приобретением избыточной функциональности, сопряжено с высокими начальными затратами и т. д.

Роб Хейлстоун: "Из всех проектов интеграции приложений

 лишь в 5% используется архитектура с EAI-брокером"

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

Решить проблемы сложности EAI-интеграции и призван предлагаемый InterSystems продукт Ensemble. С этой целью в нем в рамках общей объектной архитектуры объединены интеграционный сервер, сервер приложений, высокопроизводительная объектная СУБД (разумеется, это Cache), а также интегрированная среда разработки и администрирования. По сути, речь идет о своеобразной интегрированной системе быстрой разработки составных приложений.

Для организации совместной работы разнородных СУБД, прикладных систем и технологических платформ Ensemble предлагает набор готовых адаптеров (сегодня их около 250). Хотя каждый такой адаптер имеет специфические для соответствующего приложения атрибуты, все они обладают также общими функциями, обеспечивающими их взаимодействие с интеграционным сервером и между собой. Все адаптеры относятся к одной из шести категорий: Data Adapters отвечают за подключение к разным источникам данных, в том числе к реляционным и объектным БД; Application Adapters - за взаимодействие с популярными бизнес-приложениями (SAP, I2, Peoplesoft и др.); Transactional System Adapters - за координацию действий с мониторами обработки транзакций (Tuxedo, CICS); Emulation Adapters позволяют обращаться к унаследованным программам для мэйнфреймов с терминальным доступом, эмулируя нажатие оператором тех или иных клавиш; Protocol Adapters обеспечивают поддержку специализированных отраслевых протоколов (например, принятого в здравоохранении HL7 или популярного в банковской сфере SWIFT), а Technology Adapters - низкоуровневых коммуникационных протоколов. Кроме того, в составе Ensemble есть средства и для разработки новых адаптеров.

Все ресурсы, доступные с помощью адаптеров, внутри Ensemble представляются в форме взаимосогласованного набора объектных классов. Иными словами, разработчик составного приложения, использующего, к примеру, функции бизнес-приложения SAP, Web-сервиса, Java-программы и данные, обрабатываемые хранимыми процедурами реляционной СУБД, манипулирует ими как объектами, обладающими собственными свойствами и методами. С этой целью в среду разработки Ensemble включен скриптовый язык программирования, являющийся диалектом Visual Basic. Такой механизм позволяет, в частности, осуществлять доступ к данным, хранящимся под управлением разнородных СУБД, как к единой федеративной БД. С другой стороны, любой ресурс, имеющий форму объекта Ensemble, может быть представлен внешним программам в самых разных обличьях (COM, .Net, ODBC, Java, JDBC, EJB, XML, Web-сервис).

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

Одной из форм указанной координации является проектирование бизнеспроцессов, включающих функции отдельных прикладных систем. Для решения подобных задач Ensemble предлагает три инструмента. Относительно простые бизнес-процессы можно формировать в визуальной среде, рисуя на экране последовательность бизнес-процедур, логические связи между ними и информационные потоки. Более сложные задачи решаются с использованием XML-описаний, базирующихся на стандарте BPEL (Business Process Execution Language), что позволяет применять и инструментальные средства других поставщиков, поддерживающих этот стандарт. И наконец, самые изощренные сценарии хода бизнес-процессов можно закодировать на алгоритмическом языке.

Особую роль играет встроенная в Ensemble промышленная объектная СУБД, способная хранить терабайты данных и предоставлять одновременный доступ десяткам тысяч пользователей. На ее основе формируется репозиторий метаданных, описывающих сущности всех интегрируемых приложений, и она же обеспечивает долговременное хранение всех сообщений и характеристик состояния бизнес-процессов большой длительности, проходящих через сервер интеграции. Благодаря тому что вся информация о протекающих процессах хранится в объектной БД неограниченно долго, существенно упрощается отладка составных приложений, их аудит, администрирование, а также построение систем мониторинга бизнес-активности (Business Activity Monitoring, BAM). Пристальное внимание к BAM-системам, позволяющим оперативно анализировать результативность бизнес-процессов, обусловлено возросшей популярностью концепции предприятия реального времени (Real-Time Enterprise, RTE). Особенность объектной СУБД Ensemble - прозрачная поддержка в ней стандартного языка SQL. Это означает, что запросы к ней можно формировать при помощи любого внешнего SQL-совместимого программного продукта. Нередко составному приложению необходима собственная БД для хранения индексов, построенных на основе данных из нескольких интегрируемых приложений, или неких производных информационных массивов, для обработки которых ресурсов отдельных объединяемых приложений просто недостаточно. Подобные задачи также могут быть возложены на СУБД, входящую в состав Ensemble.

Рынок ПО интеграции приложений

Каковы же шансы Ensemble преуспеть на рынке EAI? Можно, конечно, согласиться с Полом Грабшейдом в том, что формирование этого сегмента еще не завершено, но отсюда вовсе не следует, что конкуренции на нем нет. К уже упомянутым игрокам можно добавить и таких известных производителей СУБД, как Oracle и Sybase, и крупнейшего поставщика ERP-систем корпорацию SAP, представившую недавно интеграционную платформу NetWeaver (см. PC Week/RE, N 39/2003, с. 1). Что заставит предприятие, эксплуатирующее мощную инсталляцию прикладных систем SAP, применить для интеграции внешних приложений не NetWeaver, а иной инструмент (например, Ensemble)? Думается, все будет зависеть от того, насколько простым для обычного заказчика окажется процесс интеграции.

Ведь, как заявил г-н Грабшейд, приобретать всю интеграционную платформу Ensemble и работать с ней будет конечный потребитель. С одной стороны, это вполне разумно, так как среда исполнения Ensemble должна стать неотъемлемым элементом ИТ-инфраструктуры предприятия. С другой стороны, заказчик далеко не всегда хочет сам заниматься интеграцией приложений, он с удовольствием возложил бы эту задачу на внешних консультантов и системных интеграторов. Зачем тогда ему покупать средства проектирования бизнес-процессов и разработки составных приложений? Нужны ли ему все 250 адаптеров? Может быть, сохранив архитектурную целостность Ensemble, стоит более гибко организовать продажи отдельных его подсистем? Тем более что цена продукта внушительна: 151 250 евро на один процессор сервера (поддерживаются платформы HP Alpha OpenVMS, HP Alpha Tru64 Unix, HP-UX, IBM AIX, Linux, Sun Solaris и Microsoft Windows).

Основная сложность продвижения совершенно новой разработки состоит в отсутствии на первых порах портфеля успешных примеров его практического использования. Сегодня с помощью Ensemble выполнено считанное число проектов, да и те большей частью - пилотные. Из полномасштабных следует выделить успешную интеграцию приложений, базирующихся на продуктах Vantive, Lotus Notes, Oracle, DB2, SQL Server и WebSphere, в Petrobras (Бразилия) - одной из крупнейших латиноамериканских нефтяных корпораций с годовым оборотом 30 млрд. долл.

Руководство InterSystems высоко оценивает перспективы Ensemble и на российском рынке. Оно отдает себе отчет в том, что на предприятиях нашей страны не так уж много унаследованных разнородных прикладных систем. Однако многие такие предприятия в последние годы поменяли собственников и влились в новые холдинговые структуры, а это означает, что на уровне финансово-промышленных групп проблема интеграции неминуемо выйдет на первый план. Для московского офиса InterSystems продвижение Ensemble потребует построения отдельной партнерской сети: та, что есть сегодня, ориентирована на разработчиков, использующих в своих решениях СУБД Cache. Не обойтись здесь и без субподрядчиков, занимающихся бизнес-консультированием. Выстроить новый бизнес с нуля - задача непростая. Нередко на ее решение уходят годы. Впрочем, у InterSystems подобный опыт уже есть: ее постреляционная СУБД Cache дебютировала совсем недавно - в 1997 г., а сегодня объемы ее продаж превысили 100 млн. долл. Удастся ли повторить успех с Ensemble?

Версия для печати