В списке игроков рынка IaaS аналитики Forrester, помимо крупных ИТ-компаний, для которых развитие функциональности IaaS является частью продвижения платформы промежуточного слоя на базе принципов SOA, называют ряд малознакомых российским пользователям производителей. Для них обращение к IaaS стало логическим развитием основных направлений деятельности, как правило связанных с технологиями интеграции данных, — это Composite Software, Endeca Technologies, Ipedo и Xcalia.
Платформа виртуализации данных
Компанию Composite Software аналитики Forrester считают одним из наиболее сильных производителей решений IaaS. Composite, начинавшая с выпуска продуктов по интеграции корпоративных данных (Enterprise Information Integration, EII), сегодня всю свою стратегию строит вокруг реализации сервисов данных в сервисной архитектуре. Решения этой компании отличает интегрированность всех функций IaaS, поддержка высоко-производительных приложений и возможность обеспечить согласованное представление информации для бизнес-систем в крупномасштабных информационных средах. Основные клиенты Composite Software — это финансовые и страховые компании, операторы связи и государственные структуры.
Продукты Composite реализуют архитектуру сервисов данных (рис. 1), обеспечивающую решение следующих задач:
-
унифицированный доступ к данным из источников различных типов, включая реляционные базы данных и неструктурированные данные;
-
реализацию единой корпоративной модели данных, позволяющей упростить доступ приложений к разным источникам данных и скрывающей различия в способах их представления и хранения (форматы, структуры, API и т.д.);
-
повышение производительности доступа и интеграции данных за счет использования специальных механизмов оптимизации запросов и средств кэширования для обработки часто повторяющихся запросов;
-
поддержка уже установленных в источниках данных правил защиты данных и при необходимости реализация дополнительных ограничений.
Центральную роль в архитектуре сервисов данных играет сервер для развертывания и выполнения сервисов данных Composite Information Server (CIS). Он представляет собой многопоточное Java-приложение, поддерживающее доступ к данным из различных источников, формирующее их более простое и абстрагированное от деталей реализации и доступа представление (в Composite это называют виртуализацией данных) и доставляющее данные в реляционном виде или в качестве Web-сервисов, в зависимости от типа и задач запрашивающей системы. Сервер имеет четыре базовых компонента: интеллектуальный механизм обработки запросов, механизм кэширования, многоуровневый механизм защиты данных и механизм обработки бизнес-транзакций. Последний компонент обеспечивает согласованность модификаций по множеству протоколов и источников данных, включая обычные файлы, реляционные базы данных и Web-сервисы. Стоит отметить, правда, что поддержку транзакций аналитики не относят к сильным сторонам решений Composite.
Помимо базовых составляющих, важными компонентами сервера CIS являются репозиторий сервисов данных (Web-сервисы с интерфейсом WSDL- или SQL-представлений) и репозиторий метаданных, в котором хранится вся информация о связях между виртуализированными сервисами данных в архитектуре Composite и конкретными системами — источниками данных.
Для реализации архитектуры сервисов данных в Composite предлагают также инструментарий моделирования и управления сервисами Composite Studio, набор готовых сервисов данных Composite Application Data Services для доступа к часто используемым объектам в бизнес-приложениях SAP и Oracle, а также набор интерфейсов для доступа к реляционным базам данных и данным Web-сервисов по протоколу SOAP.
Двухъядерный сервер данных
Идея создания специального уровня виртуализации данных лежит в основе решений еще одного производителя — компании Ipedo. Как и у Composite, истоки интереса этой компании к функциональности IaaS лежат в серьезной экспертизе в области интеграции корпоративной информации – компания даже называет себя пионером рынка EII.
Ipedo, как и Composite, предлагает достаточно широкий спектр возможностей сервисов данных, но рассчитанных преимущественно на небольшие и средние по масштабу реализации IaaS. Основные заказчики Ipedo: финансовые компании, госучреждения, высокотехнологичные компании, промышленный сектор и фармацевтическая отрасль.
Отличительная особенность архитектуры системы Ipedo XIP — наличие двух взаимодействующих между собой механизмов обработки и оптимизации запросов к данным. SQL-механизм предназначен для доступа к реляционным базам данных, а XQuery-механизм, основанный на новом стандарте запросов к источникам XML-данных XQuery, — для работы с Web-сервисами, очередями сообщений и XML-документами. Второй механизм может работать и с XML-данными, поддерживаемыми современными реляционными СУБД от IBM, Oracle или Microsoft. Такая двухъядерность архитектуры сервисов данных позволяет проводить максимально полную обработку данных в их исходном формате, а затем преобразовывать в нужный формат при необходимости. Система автоматически распознает, какой из механизмов необходимо применить и, кроме того, способна преобразовывать запросы на одном языке в запросы на другом.
В целом архитектура сервисов данных Ipedo XIP – это совокупность интегрированных компонентов, которые обрабатывают потоки информации от источника до пользовательского приложения в определенном порядке (рис. 2).
-
Механизм интеграции/трансформации объединяет информацию из различных источников в представления (view), с которыми работает сервер Ipedo. Эти представления на базе реляционных таблиц или XML-схем, в зависимости от источника, могут многократно применяться различными пользователями или приложениями. Механизм интеграции/трансформации решает задачу консолидации и стандартизации данных, обеспечивая возможность объединения запросов и получения унифицированного представления данных независимо от исходных форматов, схем или топологий.
-
Механизм правил применяет бизнес-логику к входящим потокам данных.
-
Менеджер метаданных отслеживает и управляет всеми метаданными, которые описывают источник данных и порядок его использования в приложениях.
-
Менеджер кэша обеспечивает хранение результатов запроса на основе заданных пользователем политик. Сохранение в кэше часто запрашиваемой информации позволяет повысить производительность обработки данных и сократить нагрузку на базовые системы работы с данными. Менеджер кэша поддерживает отдельное кэширование для реляционных и XML-данных.
-
XML-репозиторий используется для длительного хранения информации в формате XML, например, в целях поддержки поиска информации в Web-сервисах или отслеживания результатов запросов данных для последующего аудита.
-
Механизм объединения исследует удаленные источники данных и определяет, как надо распределять запросы.
-
SQL-механизм и XQuery-механизм обеспечивают поиск информации по различным источникам реляционных и неструктурированных данных.
-
Менеджер сервисов данных обеспечивает доступ к интегрированной в XIP информации по стандартным протоколам JDBC/ODBC или SOAP в ответ на запросы (на SQL или XQuery), поступающие от приложений.
Интеграционный поисковик
Компания Endeca Technologies — один из ведущих поставщиков систем корпоративного поиска, а ее новые предложения в области IaaS органически связаны с основным профилем деятельности. В Endeca вводят понятие «резюмирования для управления» (guided summarization) – комбинации процессов получения резюме по различным источникам информации, их анализа и извлечения соответствующих рекомендаций для обоснованного принятия решений. Реализации этой концепции подчинены усилия компании по созданию платформы доступа к разнородным данным. В Endeca подчеркивают, что это должна быть отделенная от прикладного уровня универсальная платформа, которая обеспечивает:
-
моделирование данных (согласованное представление структурированных и неструктурированных данных из разных источников);
-
поддержку механизма запросов (доступ к разнородным источникам данных);
-
выполнение запросов (поддержка интерактивности запросов для анализа информации в реальном времени).
Реляционные СУБД для моделирования данных используют строгую схему и в общем случае не поддерживают неструктурированные данные, ограничивают возможности запросов средствами SQL и требуют изощренных администраторских навыков для оптимизации выполнения запросов. Инструментарий бизнес-аналитики подразумевает использование некоторого заданного набора запросов и соответственно моделей данных, в то время как «резюмирование для управления» может потребовать самых произвольных и, возможно, неожиданных запросов. Для средств бизнес-анализа также характерно применение упрощенных средств работы для неаналитиков и специальных возможностей формирования и обработки запросов для экспертов. Фактически только последним реально обеспечивается интерактивность в работе с информацией. И, наконец, системы корпоративного поиска, как правило, не следуют стандартам в области представления данных, не дают четких критериев оценки результатов запросов, необходимых в обеспечении «резюмирования для управления», и используют крайне специализированные механизмы повышения производительности запросов.
В качестве альтернативы Endeca предлагает свою платформу доступа к информации Information Access Platform (IAP), ядром которой является технология MDEX Engine, унифицирующая средства поиска и бизнес-анализа в единой архитектуре. В компании определяют MDEX Engine как новый класс баз данных, разработанный специально для исследования информации, а не для управления транзакциями. Он включает все основные компоненты традиционной базы данных — модель данных, механизм запросов и алгоритмы управления данными для улучшения выполнения запросов.
Модель данных MDEX Engine аналогична XML и состоит из самоописываемых записей, не привязанных ни к какой жесткой схеме. Эти записи могут содержать произвольные поля, расположенные в произвольном порядке. Как и в XML, данные в модели MDEX Engine непосредственно сопровождаются определяющими их метаданными. Кроме того, эти данные индексируются. Такая модель поддерживает представление как структурированных данных из традиционных баз, так и информации из неструктурированных источников.
Механизм запросов MDEX Engine оптимизирован для адаптивной фильтрации и резюмирования наборов записей, что позволяет применять к данным и метаданным любые поисковые фильтры с последующими процедурами резюмирования. Специальные механизмы планирования запросов и кэширования предназначены для повышения производительности выполнения запросов. Помимо центрального механизма MDEX Engine, среда доступа к данным Endeca IAP включает в себя еще ряд компонентов.
-
Уровень преобразования информации. Модульная структура, которая преобразует данные и контент, полученные из корпоративных систем, в модель данных MDEX Engine. Исходная информация при этом не изменяется. Поддерживаются преобразования для произвольных структур данных.
-
Адаптивная библиотека прикладных компонентов. Интегрированный набор интерфейсов API для упрощения вызовов функций MDEX Engine поддерживает стандарты Web-сервисов и язык запросов Xquery.
-
Web-инструментарий управления.
Система IAP предоставляет собой мощный поисковый механизм, средства агрегации данных, отчетность, средства бизнес-анализа и инструментарий «приборных панелей». При этом система поддерживает доступ к данным «только по чтению», не дает возможности модифицировать данные, не реализует репозитории метаданных ни на уровне выполнения, ни на уровне проектирования моделей данных (важнейший компонент полноценной реализации IaaS), не обеспечивает поддержки транзакций и не отличается развитыми возможностями разработки сервисов данных.
Последняя в списке и по значению
Известная фраза на английском last but not least, которой часто подчеркивают значимость последнего рассматриваемого пункта, к сожалению, не применима к компании Xcalia в нашем описании нишевых производителей систем IaaS. Решения этого поставщика уступают конкурентам по всем критериям. Аналитики отмечают, что Xcalia предоставляет лишь базовые возможности работы с сервисами данных, применяемые для доступа к распределенным источникам структурированных и неструктурированных данных при минимальных преобразованиях.
Xcalia предлагает стандартную технологическую базу для предоставления сервисов данных (рис. 3), центральным компонентом реализации которой является система Xcalia Intermediation Core (XIC). Идея состоит в создании промежуточного уровня между бизнес-приложениями и физическими источниками данных, скрывающего детали доступа к этим источникам, упрощающего и унифицирующего возможности приложений по управлению данными.
Исходные приложения обращаются к данным с помощью известных стандартных интерфейсов и не зависят ни от специфики источников данных, ни от особенностей реализации промежуточного уровня Xcalia, отвечающего за предоставление базовых средств управления доступа к данным, включая поддержку транзакций, обработку распределенных запросов к моделям бизнес-объектов и многоуровневое кэширование для повышения производительности обработки часто повторяемых запросов. Следующий уровень – уровень отображений бизнес-объектов (Entity Mapping Engine) обеспечивает создание общих моделей данных, скрывающих от бизнес-приложений детали доступа и хранения данных разных типов в конкретных источниках: реляционных базах, XML-документах или простых файлах. Наконец, самый нижний уровень архитектуры Xcalia — механизм отображения операций (Operation Mapping Engine) — реализует непосредственный доступ к физическим источникам данных, обеспечивая две различные схемы для работы с данными, предназначенными для хранения в базах (причем сюда относятся и XML-данные), и для так называемых сервисных источников данных. К последним относятся как данные, реализованные в качестве Web-сервисов, так и данные унаследованных приложений, а также информация из Java-приложений и объекты систем типа SAP или Oracle.