Интеграция углубленного анализа данных InfoSphere Warehouse с отчетами IBM Cognos
При работе с информацией у ИТ-отделов очень часто возникает проблема, как сделать для аналитиков доступным использование инструментов углубленного анализа данных. Как известно, такие инструменты требуют специальные знания в программировании баз данных.
Например, есть данные о клиентах, относящиеся к демографическим аспектам (возраст, профессия, местожительство и т.п.), а также к прошлым операциям с этими клиентами. Отдел маркетинга хочет составить новые предложения, нацеленные на определенные группы клиентов с похожими свойствами. Как выделить такие типичные группы? Решение этой задачи обеспечивает технология кластеризации данных. Она автоматически объединяет массивы данных в соответствии с их свойствами или особенностями. Затем аналитик может проанализировать эти массивы и интерактивно уточнять их до тех пор, пока они не получит ответы на свои вопросы. Важный шаг в процессе анализа – представить пользователям результаты кластеризованных данных. Как правило, аналитики не являются специалистами по низкоуровневому программированию баз данных.
Как представить аналитикам и сотрудникам результаты углубленного анализа данных таким образом, чтобы они отражали бизнес-процесс, в котором участвует пользователь? Как соблюсти требования безопасности, например, чтобы каждый пользователь видел только то, что ему положено?
Чтобы дать удовлетворительные ответы на эти вопросы, нужно сдвинуть перспективу от статистического анализа к реальному конечному пользователю и интересующим его бизнес-процессам. Как этого можно добиться? Один из возможных ответов на это — интегрировать два интересных решения — InfoSphere Warehouse (фундамент для общекорпоративного хранилища данных и инструмент для углубленного анализа данных непосредственно в базе данных DB2) и IBM Cognos (инструмент для составления отчетов). Каждый из этих продуктов и так представляет собой мощные решения для работы с информацией, но, к сожалению, Cognos не умеет делать углубленный анализ, а InfoSphere Warehouse не дает возможности консолидировать и визуализировать релевантную информацию. Если же их соединить (а программы позволяют это сделать), то может получиться очень интересный инструмент для работы.
Для начала рассмотрим возможность такой интеграции в теории. Пакет InfoSphere Warehouse использует для хранения данных СУБД DB2. Он оснащен функцией сегментации базы данных (DPF) и обеспечивает масштабируемое, надежное и высокопроизводительное хранилище данных, сочетая преимущества базы данных, наделенной возможностями оперативной обработки транзакций, с емкостью, необходимой для крупных хранилищ данных. Пакет также включает в себя ряд алгоритмов углубленного анализа данных, например, кластеризация, регрессии, ассоциации и т.д… Процесс анализа данных начинается с загрузки информации в базу данных. Затем создается модель, которая, впоследствии, может применяться к записям, для которых целевое значение еще не известно, создавая прогноз и рассчитывая уровень его достоверности (Схематически этот процесс показан на рисунке 2). Все функции углубленного анализа данных вызываются как обычные команды SQL. Это позволяет легко интегрировать средства анализа почти в любые конструкции, например, в Web-сервисы.
Также необходимо отметить, что в случае недостатка представленных в рамках InfoSphere Warehouse статистических методов, к данным может быть применены модели, созданные в любом средстве статистического анализа, поддерживающего формат PMML.
Рис. 2
Модуль IBM Cognos 8 Business Intelligence предоставляет собой полный набор функциональных возможностей бизнес-анализа и основан на гибкой сервис-ориентированной архитектуре (SOA). Основные функции этого модуля — составление отчетов, анализ, информационные панели и таблицы оценок.
Чтобы включить данные в отчет, нужно выполнить следующие шаги:
В Framework Manager архитектор данных создает метаданные Cognos, которые описывают данные из БД с точки зрения бизнеса (отношения между таблицами, бизнес-наименования величин и т.п.).
После моделирования метаданных весь пакет загружается в хранилище контента Cognos 8. Оттуда их можно извлечь при помощи Cognos Connection в виде нового отчета.
Возможность создавать отчеты из реляционных баз данных служит ключом к интеграции InfoSphere Warehouse и IBM Cognos.
Отчеты Cognos содержат набор результатов, полученных из источника реляционных данных, как описано выше. Содержание конкретного отчета определяется путем (динамического) запроса SQL к одному или более источникам данных. Этот основной способ связи можно использовать для интеграции системы углубленного анализа данных и системы составления отчетов Cognos следующими способами:
Cognos можно использовать для отображения таблиц оценок, возможно, вместе с информацией об их достоверности.
Cognos можно использовать для отображения информации модели. Эта информация извлекается из актуальных XML-моделей при помощи функций экстрактора таблиц или запросов XQuery.
Cognos может динамически инициировать углубленный анализ и оценку данных, вызывая хранимые процедуры SQL. Это позволяет:
вызывать функцию углубленного анализа данных с разными параметрами настройки, устанавливаемыми пользователем в интерфейсе работы с отчетами.
вызывать функцию углубленного анализа данных на разных подмножествах данных (например, для создания рекурсивных углубленных отчетов)
Динамически оценивать записи на основе данных, вводимых пользователем.
На рисунке 3 приведена итоговая схема вызова функции, используемая во всех перечисленных способах.
Функция углубленного анализа данных вызывается как хранимая процедура и создает в базе данных модель XML. Эту модель можно использовать для оценки новых данных или же извлекать информацию из модели в таблицу и использовать такие таблицы в Cognos. Пользователь может вызывать функцию углубленного анализа данных интерактивно, обращаясь к соответствующей хранимой процедуре базы данных из отчета Cognos.
Такая интеграция обеспечивает целый ряд преимуществ:
Она очень проста и требует только знания SQL, без всякого дополнительного программирования
Модели углубленного анализа данных хранятся в БД, и к ним можно обращаться из Cognos безопасным, эффективным способом
Весь процесс углубленного анализа данных можно запускать и контролировать из Cognos с использованием хранимых процедур
Такая интеграция может оказать значительное влияние на распространение углубленного анализа данных, так как пользователям не обязательно знать какие-то детали процесса углубленного анализа данных.
Если тема интересна, то в одном из следующих постов могу описать пошаговый процесс интеграции на реальном примере.