На заре Business Intelligence конкуренция между программными продуктами поддержки средств анализа шла в плоскости применения интеллектуальных методов обнаружения неочевидных закономерностей в больших объемах данных, которые можно было использовать для обоснованного принятия управленческих решений. Именно для этого и были разработаны такие технологии, как многомерный анализ, OLAP и другие компоненты добычи данных (Data Mining), но по мере совершенствования решений больше внимания стали уделять «обертке» – визуализации результатов, консолидации данных из различных источников и т.п.
Впоследствии интеллектуальные механизмы собственно анализа данных (статистический анализ, прогнозное моделирование, оптимизация и т.п.) были отодвинуты на второй план и часто, в виде фиксированных модулей, были просто интегрированы в СУБД, а продукты BI, не изменившие своего названия, стали пользоваться этими методами, наращивая функциональность в сфере быстрой подготовки разнообразных отчетов. На первый план в BI-решениях вышла простота интеграции, наглядность визуализации и удобство при составлении новых отчетов.
Таким образом, высокоинтеллектуальная отрасль анализа данных превратилась в индустрию разработки Web-сервисов по извлечению данных и составлению отчетов. Такое изменение концепции особенно заметно по решениям категории Open Source в области BI, архитектура которых свелась к набору адаптеров для получения данных и интеграции с различными приложениями; центральной СУБД, поверх которой установлены модули расширения OLAP-функциональности; модулям визуализации.
Центральное хранилище данных в BI-решениях с открытым кодом, как правило, представляет собой J2EE-сервер, обрабатывающий XML-документы и выполняющий роль портала, через который организуется доступ к полученным данных. Собранные данные трансформируются в XML и помещаются в центральное OLAP-хранилище, которое может быть построено на традиционной реляционной СУБД. Далее организуется доступ к этим данным при помощи классических для порталов технологий портлетов. При этом оказалось, что многие пользователи довольствовались средствами выборки данных, встроенными в реляционные СУБД.
Справедливости ради надо отметить, что в некоторых популярных проектах BI категории Open Source были созданы специализированные OLAP-серверы, например в продукте Mondrian, входящем в платформу Pentaho Business Intelligence. Некоторые открытые СУБД, например DeepGreen компании Greenplum, также имеют специальные OLAP-расширения, позволяющие использовать их в качестве центральной базы данных аналитической системы.
Три наиболее популярных свободных BI-решения – Actuate BIRT, Pentaho и JasperSoft. Все они построены на J2EE, а в качестве стандарта представления данных используют XML, поддерживая для преобразования данных большинство признанных технологий интеграции с приложениями: ODBC/JDBC, трансформации XML, агентов и др.
Actuate BIRT
Компания Actuate зарабатывает на предоставлении услуг вокруг открытого проекта Business Intelligence and Reporting Tools (BIRT), поддерживаемого фондом Eclipse Foundation. Она предоставляет услуги по установке и настройке программного обеспечения, а также по обслуживанию построенной системы бизнес-аналитики.
На Eclipse реализована основная часть продукта – Report Designer (рис. 1), который является модулем для Eclipse IDE и обеспечивает в интерфейсе Eclipse визуализацию полученных из различных источников данных. Результаты разработки помещаются на сервер приложений Actuate iServer, который собирает необходимые для подготовки отчетов данные. Когда данные собраны и обработаны сервером приложений, они публикуются через Web с помощью портала Actuate iPortal, позволяющего посредством стандартных портлетов, выполненных по спецификации JSR-168, реализовать наиболее удобный для пользователей AJAX-интерфейс.
В состав Report Designer входит несколько редакторов, которые позволяют настраивать различные компоненты продукта. Для управления источниками данных разработчики BIRT предлагают компонент Data Explorer, который может контролировать как общие параметры соединения с источниками данных, так и отдельные запросы к ним. Модуль Expression Builder предназначен для определения вычислимых полей, формата их представления и других предварительных операций с данными.
В BIRT предусмотрены несколько компонентов оформления отчетов, в частности Styles – дизайнер стилей CSS (Cascading Style Sheets). Для быстрого создания стандартных отчетов в состав BIRT включены шаблоны отчетов – Report Templates и библиотека инструментов для отображения данных – Report Libraries. Состоящая из компонентов программа составления отчета формирует файл модели отчета, который имеет формат BIRT Report Object Model (ROM) и загружается на сервер для последующего использования.
У системы имеется еще одна возможность для расширения – подготовка Java-программ для самого сервера с помощью открытого API, позволяющего пользователям при составлении файла отчетов реализовать необходимую бизнес-логику или получить доступа к приложениям.
После того как все компоненты отчета отработали и получили все необходимые данные, они сохраняются в файле отчета и все вместе передаются на портал для дальнейшей визуализации. Портал также имеет возможность для расширения функционала с помощью Design Engine API, позволяющего интегрировать в портал новые средства интерактивного взаимодействия с подготовленными для визуализации данными. iPortal поддерживает стандарт на портлеты, что позволяет настраивать визуальные компоненты портала.
Таким образом, в архитектуре BIRT предусмотрены все возможности для создания собственных приложений пользователя, а это фактически означает, что BIRT является скорее платформой для BI-приложений, а не законченным продуктом. Для работы с этой платформой требуются специалисты по настройке инструментов агрегации информации, обработки и визуализации полученных данных, поэтому, несмотря на то что платформа бесплатна, для создания работающего продукта потребителю придется затратить определенные средства.
Pentaho BI Suite
Продукт компании Pentaho Corporation также опирается на средства разработки Eclipse и больше ориентирован не на интеллектуальный анализ данных, а на подготовку Key Performance Indicator (KPI), которые являются наглядными показателями деятельности компании.
Набор компонентов Pentaho (рис. 2) состоит из двух частей: средства разработки отчетов Pentaho Design Studio, которое основано на Eclipse, и Pentaho Server на базе сервера приложений JBOSS или IBM WebSphere. Разработчики готовят отчеты в Design Studio, а потом устанавливают их на сервере, который выполняет функции среды исполнения, хранилища и системы управления, координирующей работу различных компонентов решения. При этом используется специальный язык описания процессов обработки документов, позволяющий визуализировать ход обработки данных, отредактировать его и настроить. Сервер сохраняет системные журналы, в которых содержится информация о выполненных действиях, работе средств защиты и параметрах производительности.
Для визуализации собранной в отчетах информации используется Web-сервер, поддерживающий спецификацию JSR-168.
Продукт Pentaho является комбинацией собственных кодов компании с различными компонентами сторонних разработчиков, такими как серверы приложений J2EE, система защиты, портальные компоненты, инструменты для управления документами и контентом, инструменты для организации совместной работы и ограничения прав доступа, средства анализа данных и моделирования. Некоторые из компонентов взаимозаменяемы – код BI-продукта не привязан к конкретному коду. Для всех компонентов разработчики Pentaho сделали единую систему установки модулей, ввели общие метаданные для настройки, инструменты защиты и оповещения, единые средства дизайна и диагностики.
Центральным связующим звеном всех компонентов является XML-документ Solution Definition, который содержит все метаданные приложения – описания бизнес-процессов в формате XPDL, источников данных (адреса серверов баз данных, запросы для выборки информации, шаблоны отчетов, правила оповещения и многое другое) и взаимоотношений между процессами и данными. Фактически этот документ является моделью функционирования предприятия.
JasperSoft BI Suite
Решение JasperSoft Business Intelligence Suite компании JasperSoft имеет две редакции: с открытую и «профессиональную». Открытый вариант базируется на Linux или Windows, серверах приложений JBOSS или tomcat, СУБД MySQL и каталоге Hibernate. Профессиональная версия поддерживает все коммерческие варианты Unix, включая Mac OS X, а также несколько дистрибутивов Linux, коммерческие серверы приложений IBM WebSphere, BEA WebLogic и Oracle Application Server. Также существенно расширен список поддерживаемых СУБД и каталогов для хранения данных о пользователях.
В состав пакета JasperSoft входят четыре компонента: библиотека отчетов JasperReports, графический инструмент дизайнера JasperStudio, сервер для исполнения полученных отчетов JasperServer и OLAP-компонент для анализа полученных отчетов JasperAnalysis. Все они реализованы с помощью Java и имеют необходимые интерфейсы для расширения функциональности. Общая схема этого пакета программ примерно такая же, как и у других решений: отчеты разрабатываются на основе библиотеки уже реализованных отчетов JasperReports с помощью продукта JasperStudio. Когда отчет сформирован, он компилируется и помещается в среду исполнения JasperServer, где приводятся в движение все механизмы сбора данных – они наполняют отчет и передают его для анализа в OLAP-продукт, который в связке называется JasperAnalysis.
JasperStudio (iReport в версии с открытыми кодами) представляет собой средство организации доступа к корпоративным данным, а также разработки и компиляции отчетов (рис. 3). Продукт опирается на библиотеку JasperReports, в которой собраны компоненты, необходимые для составления отчетов. Как только отчет сформирован и скомпилирован, его можно помещать в среду JasperServer, построенную по принципам Web 2.0: сами пользователи настраивают Web-интерфейс приложений под свои потребности. Этот интерактивный интерфейс позволяет аналитикам исследовать данные, получая доступ к наиболее актуальным выборкам. Для более глубоких исследований данных служит компонент JasperAnalysis – OLAP-сервер изучения многомерных выборок из реляционных баз данных для выявления скрытых закономерностей.
***
Из трех приведенных решений первые два фактически представляют собой платформы для построения систем BI – наборы компонентов, которые пользователи должны самостоятельно состыковать с установленными на предприятии источниками данных, при этом необходимо разработать средства для наглядной демонстрации полученных результатов. В то же время предложение от JasperSoft имеет коммерческий вариант поставки, в котором реализован более широкий набор средств интеграции, что позволяет сократить сроки внедрения продукта.
Далеко не случайно сообщество Open Source заинтересовалось решениями в области бизнес-аналитики. Идеологически BI-проекты близки к продуктам с открытыми кодами, поскольку изначально требуют интеграции с различными источниками данных и дополнительных услуг по внедрению и настройке. Именно на такой бизнес-модели и зарабатывают все компании, связавшие свой путь с Open Source.
Рис. 1. BIRT: среда подготовки отчетов
Рис. 2. Платформа Pentaho BI