Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
2007 г.

Глубинный анализ данных в режиме реального времени: Oracle Real Time Decisions

Антон Шмаков, старший консультант отдела бизнес-анализа и хранилищ данных, Консалтинговая группа "Борлас" (Москва)
Источник: Oracle Magazine - Русское издание

Введение

Результаты исследований, проведенных компаниями Gartner и Merill Lynch, показывают, что бизнес-аналитика (Business Intelligence - BI) остается одним из трех главных приоритетных направлений развития. Поэтому корпорация Oracle, как и ее основные конкуренты, уделяет очень большое внимание аналитическим возможностям своих бизнес-приложений, поскольку именно они являются ключевым фактором, оказывающим влияние на выбор потребителей. Серьезное место в анализе данных начинает занимать глубинный анализ данных (Data Mining), процесс поиска различных закономерностей в огромном наборе фактических данных. В целом, термин Data Mining обозначает не столько конкретную технологию или подход, сколько сам процесс поиска корреляций, тенденций, взаимосвязей, ассоциаций и закономерностей посредством различных математических и статистических алгоритмов. Цель этого поиска - представить данные в виде, четко отражающем бизнес-процессы, построить модель, при помощи которой можно прогнозировать процессы, критичные для планирования бизнеса и проводить исторический анализ данных для построения планов и бюджетов. Основная задача Data Mining - прогнозирование тех или иных процессов.

Для реализации технологий извлечения знаний в состав СУБД Oracle Database включена специальная опция - Oracle Data Mining, основу которой составляют процедуры, реализующие различные алгоритмы построения моделей, средства подготовки данных, оценки результатов, применения моделей. Использовать все эти возможности можно как на программном уровне с помощью Java API или PL/SQL API, так и с помощью графической среды Oracle Data Miner (ODM). Продукт ODM и Data Mining опция существуют достаточно давно и хорошо известны сообществу Oracle.

Oracle, купив в 2005 году компанию Siebel Systems, приняла решение, что корпоративная линейка средств Business Intelligence (BI) корпорации будет базироваться на Siebel Analytics, а ее CRM-системы - на Siebel CRM. В состав продуктов Siebel Analytics и Siebel CRM в рамках OEM-соглашения включался Real-Time Decisions - специальный инструмент для Data Mining от компании Sigma Dynamics. Эта компания была разработчиком средств так называемой прогнозной аналитики (predictive analytics), позволяющих предсказывать, к примеру, реакцию конкретного заказчика на то или иное коммерческое предложение, опираясь на анализ накопленных ранее данных и принимая во внимание оперативную информацию, поступающую в режиме реального времени. Задачи такого рода стоят перед пользователями CRM-систем (кросс-продажи, удержание клиентов), call-центров (интеллектуальная маршрутизация вызовов), средств обеспечения безопасности (выявление мошенничества) и т. д. Таким образом, очередным шагом корпорации Oracle в этом направлении стало приобретение активов компании Sigma Dynamics. Так появился новый продукт Oracle Real-Time Decisions (Oracle RTD). Рассмотрим основные особенности этого продукта.

Описание Oracle RTD

Oracle RTD - это продукт линейки Data Mining, созданный для прогностической аналитики в режиме реального времени. Он построен полностью на SOA-архитектуре. Oracle RTD публикует наружу различные Web-сервисы, через которые осуществляется работа с сервером. Он состоит из пяти основных компонентов:

  • Decision Studio - специальный инструмент, построенный на основе движка Eclipse, в котором ведется вся разработка;
  • Real-Time Decision Server - движок всей системы, представляющий собой сервер, работающий на J2EE-сервере;
  • Decision Center - приложение для среды J2EE, которое обеспечивает доступ к проектам через Web. Позволяет бизнес-пользователям просматривать и администрировать проекты, следить за работой всей системы, собирать статистику;
  • Administration (JMX) - интерфейс для сетевого администрирования. Настройка всей системы ведется с помощью приложения JConsole, входящего в состав Java SE 1.5;
  • Load Generator - специальный инструмент для моделирования нагрузки на серверы, нужен для тестирования проектов.

Проект в RTD называется Inline Service. Разработка проектов ведется в Decision Studio. Вообще сама разработка моделей в RTD очень схожа с программированием на Java. В конечном итоге весь проект представляет собой набор Java-классов, которые выполняются на сервере приложений. Основным компонентами Inline Service являются

  • Application - описывает свойства всего приложения;
  • Performance goals - набор ключевых показателей, за которыми надо следить и оптимизировать;
  • Choices - это различные альтернативные предложения, которые являются атрибутами проекта (например: причины звонка с службу поддержки);
  • Rules - различные бизнес правила. Бывают правила для вычисления применимостей каждого из предложений или расчета показателей;
  • Decisions - реакции на конкретное предложение. Высчитывается степень влияния каждого из возможных предложений и выбирается наилучшее исходя из ключевых показателей;
  • Selection functions - функции для выбора подходящих предложений;
  • Entities - сущности всей системы (например: клиент, звонок и т.д.);
  • Data sources - описываются источники информации;
  • Integration points - объекты, в которых описывается как Inline Service взаимодействует с внешними системами: либо получая новую порцию данных, либо отправляя реакцию на полученные данные. Существует два типа таких объектов:
    • Informants - получают данные из внешних систем (например: данные о клиенте);
    • Advisors - посылают ответ (совет) в зависимости от ключевых показателей обратно.
  • Модели - самообучающиеся модели, которые позволяют с течением времени улучшать прогностические способности аналитических приложений и быстро приспосабливаться к меняющимся условиям бизнеса;
  • Statistical collectors - специальный модели, используемые для сбора статистических данных;
  • Categories - категории для сегментации данных при отображении в Decision Center.

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

ODM и ORTD

Корпорация Oracle на сегодняшний день предлагает два решения класса Data Mining - ODM (Oracle Data Mining), решение на основе Data Mining опции базы данных, и Oracle Real-Time Decisions. Опция для анализа данных Data Mining является мощным движком, который располагается в ядре базы данных и поэтому рассчитан на обработку экстремально больших объемов данных. Именно поэтому Data Mining удобно применять регламентировано при формировании хранилищ данных или при историческом анализе данных и выявлении тенденций, закономерностей и зависимостей. Для Data Mining источником и приемником информации являются таблицы базы данных. С другой стороны, Oracle RTD является продуктом другой категории. Его удобно применять в режиме реального времени, когда объемы поступающих данных не столь велики, но скорость выдачи результатов должна быть высокой. Обычно такая практика распространена в бизнес-приложениях (учетных системах), когда по поступающей информации в режиме реального времени надо делать заключения и выдавать рекомендации.

На сегодняшний день самым развитым способом интеграции приложений является SOA-архитектура. Поэтому ORTD и рассчитан на SOA-среду. Следует отметить, что отличается у двух продуктов и методика работы самого движка, в ODM разработчик должен четко и правильно настроить модели для анализа данных. С другой стороны, ORTD предоставляет механизмы, в котором модели могут самостоятельно настраиваться и меняться. В целом ситуация с ODM и ORTD похожа на ситуацию, которая сложилась с Oracle-продуктами для построения хранилищ данных Oracle Warehouse Builder (OWB) и Oracle Data Integrator (ODI). ODM является аналогом OWB, поскольку работает на уровне базы данных Oracle. RTD, соответственно, является аналогом ODI, рассчитан на работу в SOA-среде, имеет готовые механизмы для настройки модели. Т.е. Oracle предлагает продукты двух категорий: один для разработчиков базовых технологий, которые знают SQL, PL/SQL, Java, и для разработчиков новых и "модных" систем, которые используют SOA-стандарты XML, WSDL и т.д. В соответствии с этим RTD можно легко и просто интегрировать в BPEL-процессы. Еще одной отличительной особенностью этих двух продуктов является то, что ODM предназначен для непосредственного анализа данных, в то время как ORTD предназначен в большей степени для интеграции анализа данных в бизнес-приложения.

Oracle Data Mining

Oracle Real-Time Decisions

Сервер

Опция базы данных, представляет собой набор готовых процедур и пакетов

J2EE приложение

Платформы

Сервер - платформы, на которых существует Oracle Database
Клиент - любая платформа с поддержкой Java

Сервер - любой J2EE-сервер

Клиенты - любая платформа с поддержкой Java

Интерфейс

PL/SQL API, Java API

Web-сервисы, Java API

Алгоритмы

Алгоритмы классификации, кластеризации, поиск существенных атрибутов, регрессия, поиск ассоциаций, выделений признаков

Сложные модели прогнозирования на основе классификации

Клиенты

Oracle Data Miner - "толстый" Java-клиент для создания, отладки, запуска моделей

Decision Studio - "толстый" Java-клиент для проектной работы

Decision Center - Web-приложение для мониторинга, запуска и администрирования проектов

Интеграция

На уровне базе данных

На уровне Web-сервисов

Возможности настройки моделей

Только настройка параметров

Гибкая настройка моделей на Java

Заключение

Oracle Real-Time Decisions представляется очень интересным продуктом для расширения аналитических возможностей бизнес-приложений и BI-систем. Он идеально подходит для SOA-среды и легко интегрируется в любые бизнес-процессы на предприятии. Основной его плюс - это самонастраивающиеся прогностические модели, которые можно оперативно запускать через Web-сервисы. С другой стороны, Oracle Data Mining идеально подходит для глубокого и всестороннего анализа больших объемов информации. Его плюсы - большое количество различных алгоритмов для анализа, позволяющих производить тонкую настройку и делать различные пред- и пост- обработки данных. ORTD - это в большей степени законченное бизнес-приложение, которое надо настроить и адаптировать для конкретных бизнес-задач. ODM - это мощный инструмент и технология, которая позволяет строить сложные и разносторонние системы для анализа данных.

В настоящее времени отдел бизнес-анализа и хранилищ данных Консалтинговой группы "Борлас" занимается изучением продукта Oracle Real-Time Decisions. В следующих номерах OM/RE мы покажем на примерах, как работает данный продукт и выполним небольшой бизнес-пример.

Новости мира IT:

Архив новостей

Последние комментарии:

Loading

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 985 1945361
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2015 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...