Я начал писать эту статью с некоторой опаской, и тому было две причины. Около года тому назад я проводил для группы ИТ-директоров компаний презентацию, посвященную технологиям информационных хранилищ, работающих в реальном времени. Реакция аудитории оказалась далека от положительной — присутствующие были встревожены, поскольку им показалось, что я предлагаю в реальном времени предоставлять пользователям информацию, поступающую из систем поддержки принятия решений. В общем-то OLTP-системы могут работать в реальном времени, но современные хранилища данных, создаваемые на основе пакетных технологий, для этого не приспособлены.

Вторая причина заключается в том, что любители профессионального жаргона наплодили немало ученых словечек, и такие понятия, как активное информационное хранилище, предприятие с нулевым временем ожидания (zero latency enterprise, ZLE), технология информационных хранилищ реального времени, аналитические данные реального времени, мониторинг деловой активности и персонализация в реальном времени, нуждаются в пояснении. Не уверен, что мне удастся прояснить смысл этих понятий в этой небольшой статье.

Моя цель — убедить как менеджеров, так и ИТ-специалистов, что операции реального времени обязательно найдут применение в корпоративных хранилищах данных и системах бизнес-аналитики (business intelligence, BI) и что средства поддержки таких операций уже существуют. Я хочу также объяснить многие принятые в отрасли жаргонные словечки и показать, как различные технологии поддержки принятия решения в реальном времени интегрируются в структуру, предназначенную для поддержки интеллектуальных бизнес-технологий (intelligent business).

Для удобства я буду обозначать термином DP реального времени (realtime decision processing), или поддержка принятия решений в реальном времени, технологию, которая обеспечивает быстрый доступ к информации и результатам анализа из любого места в любое время и применяется для принятия деловых решений в реальном масштабе времени.

Появление систем реального времени

Обычно считается, что информационные хранилища и приложения BI — это независимые автономные системы, предназначенные для поддержки стратегического планирования и принятия решений. По мере развития этих приложений становилось очевидным, что предоставляемые ими данные и аналитическая информация становятся жизненно важными для принятия повседневных тактических решений, и многие компании уже не в состоянии эффективно работать без них. Налицо тенденция интеграции DP-систем в общий бизнес-процесс. Развитие электронного бизнеса также способствует такой интеграции, так как в мире электронного бизнеса компании должны намного быстрее реагировать на изменения конъюнктуры рынка.

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

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

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

  1. Управляемое событиями ядро (event-driven hub), которое в реальном времени собирает и преобразовывает оперативную информацию и данные электронного бизнеса и загружает их в информационное хранилище.
  2. Механизм анализа, который выполняет бизнес-анализ и предоставляет доступ к его результатам с любого места и в любой момент времени.
  3. Основанный на системе правил механизм поддержки принятия решений, который вырабатывает рекомендации или в реальном времени генерирует оперативные сообщения или сообщения-распоряжения для электронного бизнеса (подробнее о механизмах поддержки принятия решений я расскажу чуть позже).

Создание информационного хранилища реального времени

Для создания информационных хранилищ чаще всего применяются пользовательские программы или промышленные инструментальные средства, осуществляющие цикл «извлечение — преобразование — загрузка». Они извлекают данные из управляющих систем и систем электронного бизнеса, очищают и преобразуют эти данные, а затем загружают их в хранилище. Обычно эти операции выполняются в пакетном режиме периодически (например, ежедневно или еженедельно) с целью создания «моментальных снимков» данных.

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

Из существующих систем поддержки принятия решений этому требованию наиболее полно удовлетворяют операционные хранилища данных (operational data store, ODS), обеспечивающие централизованное сохранение детальных данных, поступающих от источников почти в режиме реального времени. Требования к оперативности данных в ODS зависят от специфики приложений — иногда речь может идти о нескольких секундах, иногда — о нескольких часах. Для обеспечения такого быстрого, «почти в реальном времени» извлечения оперативных данных, процедуры ODS обычно непрерывно «перехватывают» данные из систем-источников, используя триггеры баз данных, репликацию или извлечение информации из журналов восстановления баз данных. Разработчики уже предлагают интерфейсы для сбора данных из журналов Web-серверов и для фиксации переходов пользователей между Web-страницами (clickstream). Появились также интерфейсы к программам, генерирующим сообщения, и EAI-приложениям (enterprise application integration, интеграция приложений предприятия). В частности, корпорация IBM недавно выпустила мост сопряжения хранилищ DB2 Warehouse Manager и приложений WebSphere MQ (прежнее название IBM MQSeries). Корпорация Informatica также предусмотрела связь между собственным информационным хранилищем PowerCenter (http://www.informatica.com/products/infrastructure/pcenter.htm) и приложением IBM WebSphere MQ, а также продуктами компаний Tibco Software, WebMethods и Vitria.

Все приемы, используемые для создания ODS, с равным успехом можно применять для построения информационных хранилищ реального времени. Фактически в продуктах, рекламируемых сегодня в качестве систем поддержки принятия решений в реальном времени, ядро основано на ODS. Не вдаваясь в лишние теоретические рассуждения, отметим, что хранилище информации, используемое для принятия решений в реальном времени, обычно содержит данные длительного хранения (мало изменяющиеся со временем), а также итоговые данные. Таким образом оно является скорее информационным хранилищем, чем ODS. Поэтому его можно назвать информационным хранилищем реального времени. Существуют и другие термины для обозначения этого понятия, к примеру, корпорация NCR называет работу информационного хранилища реального времени active data warehousing (технология активных информационных хранилищ).

Усилия разработчиков по поддержке программ, управляемых сообщениями, и EAI-приложений в информационных хранилищах стали важнейшим шагом к созданию информационных хранилищ реального времени. Этот элемент можно отобразить как управляемое событиями интегрирующее ядро; оно обеспечивает связь с источниками данных реального времени (например, с подключенными к телефону POS-терминалами торговых точек) и ведущими системами поддержки работы фронт- и бэк-офисов, созданными такими компаниями, как SAP и Siebel Systems.

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

Поставщики информационных хранилищ утверждают, что предлагаемые ими инструментальные средства обеспечивают более мощные возможности очистки, преобразования, интеграции и управления данными, чем системы EAI и программы, обменивающиеся сообщениями. Преимущество последних — в том, что они с самого начала были разработаны для обработки огромных непрерывных потоков данных, их архитектура идеально подходит для работы в реальном времени. Однако инструментальные средства информационных хранилищ предназначены для пакетной обработки данных, и чтобы обеспечить конвейерную обработку данных, необходимую для информационных хранилищ реального времени, они нуждаются в серьезной модификации. Поставщики информационных хранилищ, например Informatica, уже решают эту проблему, дополняя свои продукты функциями для организации сеансов постоянного подключения для параллельной обработки данных — чтения, записи и преобразования. Однако пока сложно предсказать, чем закончится спор по поводу способов преобразования данных.

Корпорация Compaq Computer Corp. со своим решением ZLE (http://www.compaq.com/zle) — один из самых заметных игроков на рынке информационных хранилищ и DP-решений реального времени. Решение ZLE включает архитектурную концепцию, аппаратные средства и программное обеспечение Compaq, консалтинговые услуги, а также продукты сторонних поставщиков.

Впервые концепция ZLE была описана в исследовательском документе Gartner Group, сейчас она является частью инициативы Gartner под названием Business Activity Monitoring (мониторинг бизнес-активности). В ZLE также присутствуют некоторые идеи, описанные в книге The Power of Now Вивека Ранадива*, основателя и генерального директора компании Tibco Software.


*Vivek Ranadive. The Power of Now: How Winning Companies Sense and Respond to Change Using Real-Time Technology. McGraw-Hill, September 1999.

Корпорация Target одной из первых воплотила концепцию ZLE, включив ее в свою систему управления отношениями с клиентами (CRM). Эта система базируется на многотерабайтном информационном хранилище реального времени, где содержится информация о работе с клиентами во всех 900 предприятиях и офисах компании, включая магазины, Web-сайты, call-центры и пункты продаж по каталогам.

Механизм анализа в реальном времени

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

Для информационного хранилища реального времени можно применить управляемый событиями механизм анализа, использующий механизм генерации итоговых данных и средства OLAP. Эти средства в асинхронном режиме готовят итоговые данные и сводки ключевых показателей эффективности бизнеса — с заданной периодичностью или в соответствии с бизнес-правилами, описывающими обработку информации по мере ее поступления в информационное хранилище. Итоговые данные и показатели размещаются в информационном хранилище и предоставляются пользователям через корпоративный портал.

Высокая скорость доступа к информации невозможна, если итоговые данные и показатели не соответствуют бизнес-целям или прикладным потребностям и механизм анализа вынужден генерировать эти данные синхронно в реальном времени. Разработчики постоянно повышают производительность своих систем поддержки принятия решений, используя новые алгоритмы управления данными, параллельную обработку и другие методы, и все же пока не существует простого способа обеспечения высокой производительности операций, в которых требуется анализировать большие объемы данных для получения одного-единственного показателя. Однако некоторые типы вычислительных операций поддержки принятия решений допускают «предсказательный» подход. Он подразумевает использование механизма поддержки принятия решений на основе извлечения данных (data mining), что позволяет обойтись без анализа данных информационного хранилища в реальном времени.

DP-механизм реального времени

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

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

Механизмы принятия решений существуют в виде отдельных приложений, однако чаще их встраивают в другие программные системы, например серверы Web-приложений, корпоративные порталы или аналитические приложения. Тем не менее базовая архитектура механизмов от этого не меняется. Основная информация, поступающая на вход механизма принятия решений, делится на два вида: набор бизнес-правил и данные, к которым эти правила применяются в процессе принятия решения. В бизнес-правилах воплощены знания о конкретных бизнес-ситуациях (например, методы оценки рисков при предоставлении кредита). Эти правила создаются пользователями или генерируются автоматически средствами наблюдения, анализа и сбора информации о бизнес-процессах. Примером программных продуктов, которые способны самостоятельно создавать бизнес-правила, могут служить средства извлечения данных и системы прогнозирования вкусов и использованием алгоритмов анализа предпочтений (collaborative filtering), отслеживающие поведение посетителей Web-сайта.

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

Существует много различных типов DP-механизмов. Мы вкратце рассмотрим несколько продуктов, в том числе системы извлечения данных, аналитические приложения для CRM и Web-серверы, ориентированные на персонализацию в реальном времени, которые могут использоваться для автоматизированного принятия решения.

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

В частности, система DB2 Intelligent Miner Scoring компании IBM позволяет использовать простые SQL-инструкции для вызова модели извлечения данных, встроенной в СУБД DB2. Система применяется для оценки (сегментирования, классификации или ранжирования) записей на основе предопределенных критериев, определенных в модели извлечения данных.

Пакет Enterprise Miner компании SAS Institute позволяет создавать модели развертывания механизма извлечения данных на языке SAS, C или Java. В дальнейшем эти модели можно встраивать во внешние механизмы принятия решений. Модель развертывания механизма извлечения данных выполняет функции DP-механизма, в котором для выработки рекомендаций и решений применяются методы прогнозирования. Прогнозирующая модель — это набор бизнес-правил, созданных в процессе анализа реальных бизнес-операций на основе информации из оперативных систем или из информационного хранилища. Такой подход оказывается особенно полезным в CRM-среде для выполнения индивидуализированного маркетинга.

На рынке имеется несколько аналитических CRM-продуктов со встроенными механизмами принятия решений. Для управления работой подразделения продаж и поддержки автоматизированной системы принятия решений с замкнутым циклом в этих DP-механизмах используются бизнес-показатели, созданные на основе данных информационного хранилища. В качестве примеров таких решений можно назвать пакеты BusinessObjects Application Foundation, E.piphany Real-Time Personalization и Xchange Real Time.

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

Подобные средства также часто используются в автономных механизмах поддержки принятия решений. Например, в составе сервера Web-приложений WebSphere, разработанного корпорацией IBM, предусмотрены два различных средства персонализации. Первое — модуль LikeMinds компании Macromedia, который выдает рекомендации на основании истории поведения пользователей и с применением коллективной фильтрации. Второе средство — модуль Blaze Advisor компании Brokat, использующийся и в рассмотренном ранее комплексе Compaq ZLE. В Blaze Advisor текстовые бизнес-правила либо определяются пользователями, либо генерируются на основе рекомендаций, поступающих из системы поддержки принятия решений. В частности, к Blaze Advisor можно подключить среду развертывания SAS Enterprise Miner.

Будущее систем реального времени

Как видите, DP-системы реального времени обеспечивают работу информационных хранилищ реального времени, анализ информации реального времени и автоматизированное принятие решений реального времени. Указанные компоненты могут работать как в составе единого комплекса, так и независимо.

DP-системы реального времени готовы стать ключевой движущей силой следующего поколения систем поддержки принятия решений и уже через несколько их можно будет найти практически в каждой BI-системе.

Колин Уайт (Colin White) — президент компании DataBase Associates International. Специализируется в области технологий информационных хранилищ, систем бизнес-аналитики (business intelligence) и корпоративных порталов. С ним можно связаться по e-mail: cwhite@databaseassociates.com.