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

Осн. св-ва:1)Атомарность-выполнение операций полностью или невыполнение вообще.

2)Согласованность-гарантия взаимной целостности данных

3)Изолированность-выполнение операций изолированно в пользовательской сети

4)Долговечность-если трансакция выполнена успешно, то произведенные в ней изменения в БД не б/т потеряны ни при каких обстоятельствах

31. Технология olap (On-Line Analytical Processing оперативная аналитическая обработка).

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

OLAP основ-ся на Data Mining. Data Mining- сов-ть методов или технологий интелек-го анализа данных с целью выявления в данных ранее неизвестных, нетривиальных(непростых), практически полезных и доступных интерпретации знаний, необходимых для принятия решений. OLAP вкл-ет в себя: 1)ср-ва обработки инф-ции на основе методов искусственного интеллекта

2) ср-ва графического представления данных.

OLAP-технологии основывается при помощи многомерной БД, называемых OLAP-кубами.

32.Хранилище данных (ХД), понятие и концепции построения .

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

Св-ва (принципы)организации ХД:

1)предметно-ориентированное. Инф-ция в ХД организована в соот-ии с основ-ми аспектами деят-ти п/п, т.е бизнес-процессами. Данные объедин-ся в категории и хранятся в соот-ии и с областями, кот-е они описывают

2)интегрированность -исходные данные извлек-ся из операц-х БД, проверяются, очищаются, приводятся к единому виду, в нужной степени агрегируются и загружаются в ХД

3)неизменность (некорректируемость)-попав в опред-ый исторический слой ХД, данные уже никогда не б/т изменены. Данные в ХД не создаются, т.е поступают из внешних источников, не корректир-ся и не удаляются

4)поддержание хронологии (истории)- привязка ко времени,или завис-ть от времени, т.е данные в ХД напрямую связаны с опреде-ым периодом времени.

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

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

33. Data Mining – это совокупность методов обнаружения в БД ранее неизвестных, нетривиальных (непростых), практически полезных, доступных для интерпретации знаний, необходимых для принятия решений в различных сферах человеческой жизни.

Datamining– это процесс выделения из БД неявной и не структурированной информации с представлением её в виде пригодной для использования.

Задачи DM:

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

    Кластеризация – задача разбития заданной ситуации на подмножества, называемые кластерами.

    Ассоциация – поиск закономерностей, осуществляемый не на основе свойств объекта, а между несколькими событиями, которые происходят одновременно.

    Прогнозирование – на основе исторических данных оцениваются пропущенные или же будущие значения целевых численных показателей.

34. 1С:Предприятие - программный продукт компании , предназначенный для автоматизации деятельности на предприятии.

1С:Предприятие - это (одновременно) и технологическая платформа, и пользовательский режим работы. Технологическая платформа предоставляет объекты (данных и метаданных) и механизмы управления объектами. Объекты (данные и метаданные) описываются в виде конфигураций. При автоматизации какой-либо деятельности составляется своя конфигурация объектов, которая и представляет собой законченное прикладное решение. Конфигурация создаётся в специальном режиме работы программного продукта под названием «Конфигуратор», затем запускается режим работы под названием «1С:Предприятие», в котором пользователь получает доступ к основным функциям, реализованным в данном прикладном решении (конфигурации).

Типовые конфигурации:

    Конфигурация «1С:Бухгалтерия 8»

Основные возможности: ведение учёта по нескольким организациям в одной базе; ведение как бухгалтерского, так и налогового учёта (на раздельных планах счетов); возможность ведения учёта по упрощённой системе налогообложения (для каждой организации система налогообложения может быть выбрана независимо); более гибкие возможности по учётной политике (задаётся раздельно для бухгалтерского и налогового учёта), закрытию счетов, расчёту амортизации, учёту НДС , в том числе включение/исключение из стоимости с учётом ЕНВД в розничной торговле.

    Конфигурация «1С:Управление Торговлей 8»

Предназначена для ведения торгово-складского учёта на предприятиях. Функциональность по сравнению с конфигурацией «1С: Торговля и склад 7.7» расширена: появились возможности управления отношениями с клиентами (CRM), а также возможность планирования продаж и закупок.

    Конфигурация «1С:Зарплата и управление персоналом 8»

Предназначена для реализации кадровой политики предприятия и денежных расчётов с персоналом по следующим направлениям:

    планирование потребностей в персонале;

    управление финансовой мотивацией персонала;

    эффективное планирование занятости персонала;

    учёт кадров и анализ кадрового состава;

    начисление и выплата заработной платы;

    исчисление регламентированных законодательством налогов и взносов с фонда оплаты труда;

    отражение начисленной зарплаты и налогов в затратах предприятия.

    Конфигурация «1С:Управление производственным предприятием 8»

Наиболее интересные особенности, которые в подавляющем большинстве других систем не встречаются:

    Имеются конфигурации: «Управление производственным предприятием» (для России), «Управление производственным предприятием для Украины» и «Управление производственным предприятием для Казахстана», и это именно разные конфигурации, а не разные варианты настроек.

    Существует возможность изменения учтённых (проведённых) документов.Уровень техподдержки зависит от фирмы-партнера (так называемых «франчайзи»). Для поиска партнера существует специальный ресурс: «Выбор аттестованных франчайзи» .

Архитектура 1С:Предприятие 8

1) Общие механизмы. Система 1С:Предприятие 8 имеет в своей основе ряд механизмов, определяющих концепцию создания прикладных решений. Наличие этих механизмов позволяет максимально соотнести технологические возможности с бизнес-схемой разработки и внедрения прикладных решений.

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

2) Прикладные механизмы. Состав прикладных механизмов 1С:Предприятия ориентирован на решение задач автоматизации учета и управления предприятием. Использование проблеммно-ориентированных объектов позволяет разработчику решать самый широкий круг задач складского, бухгалтерского, управленческого учета, расчета зарплаты, анализа данных и управления на уровне бизнес-процессов. 3) Интерфейсные механизмы. В 1С:Предприятии 8 реализован современный дизайн интерфейса и повышена комфортность работы пользователей при работе с системой в течение длительного времени.

4) Масштабируемость. Технологическая платформа обеспечивает различные варианты работы прикладного решения: от персонального однопользовательского, до работы в масштабах больших рабочих групп и предприятий. Ключевым моментом масштабируемости является то, что повышение производительности достигается средствами платформы, и прикладные решения не требуют доработки при увеличении количества одновременно работающих пользователей.

5) Интеграция. Система 1С:Предприятие 8 является открытой системой. Предоставляется возможность для интеграции практически с любыми внешними программами и оборудованием на основе общепризнанных открытых стандартов и протоколов передачи данных.

35. ИКИС «Галактика» входит в комплекс бизнес-решений Галактика Business Suite, главное назначение которой – выполнение в едином информационном пространстве типовых и специализированных задач управления предприятием, холдингом, группой компаний в условиях современной экономики.

Система Галактика ориентирована на автоматизацию решения задач, возникающих на всех стадиях управленческого цикла: прогнозирование и планирование, учет и контроль реализации планов, анализ результатов, коррекция прогнозов и планов. Основной структурной единицей системы является модуль, предназначенный для решения отдельных задач определенной предметной области (например, «Управление сбытом», «Планирование производства»). Модули, в свою очередь, объединены в функциональные контуры. Допустимо как изолированное использование отдельных модулей, так и их произвольные комбинации, в зависимости от производственно-экономической необходимости. Стоит отметить, что в системе Галактика ERP сделан первый шаг к реализации концепции компонентной модели: логически модули системы состоят из компонент, взаимодействующих друг с другом через специальные интерфейсы.

Контур планирования и управления финансами системы Галактика ERP – это надежный инструмент для управления финансовыми ресурсами компании. Он адресован руководителям и специалистам финансовых и планово-экономических служб. С его помощью можно выполнять планирование финансово-хозяйственной деятельности предприятия, осуществлять моделирование и согласование финансовых планов, проводить анализ их фактического исполнения, вести оперативный финансовый менеджмент. Контур планирования и управления финансами системы Галактика ERP состоит из трех модулей – «Управление бюджетом», «Платежный календарь» и «Финансовый анализ».

Бюджетирование – процесс управления финансовыми ресурсами, включающий в себя следующие этапы:

Планирование и моделирование различных вариантов бюджетов;

Согласование и утверждение бюджетов;

Формирование фактических показателей бюджета;

Проведение корректировок бюджета.

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

Основная задача финансового анализа – оценка финансового состояния предприятия и выявление перспектив его дальнейшего развития. Анализ финансового состояния может производится по нескольким методикам, позволяющим рассчитывать значения одних и тех же показателей с помощью разных формул, описывающих соотношение показателей в старом и новом стандарте. Финансовый анализ производится на основе данных баланса предприятия, а так же на основе различных справок и приложений. Экономический анализ производится после выполнения функции импорта отчетов, как из внешних источников, так и из других модулей системы.

Введение

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

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

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

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

Обзор и анализ программных технологий разработки WEB-приложений для аналитической обработки данных

Технологии оперативной аналитической обработки данных

программный модель приложение данные

В настоящее время огромные объемы данных накапливаются в учетных, так называемых транзакционных (OLTP), системах.

Такие системы строятся на основе современных СУБД, в которых развит механизм управления транзакциями, что сделало их основным средством создания систем оперативной обработки транзакций (OLTP-систем, On-Line Transactions Processing).

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

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

Без продуктивной переработки и анализа колоссальные потоки информационной руды, т.е. сырые данные, образуют никому не нужную свалку.

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

Анализ данных в той или иной степени проводится во многих информационных системах, в том числе и в OLTP-системах. Но виды анализа данных различаются в зависимости от гибкости и глубины проводимого анализа.

Информационно-поисковый анализ - анализ данных, проводимый по заранее определенным, т.е. заранее заданным видам запросов (регламентированным запросам).

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

Интеллектуальный анализ - глубокий анализ данных, позволяющий получать из имеющихся данных скрытые для пользователя знания, такие как:

§ функциональные и логические закономерности в накопленных данных;

§ модели и правила, объясняющие найденные закономерности;

§ прогнозы развития процессов.

Сравнение характеристик различных видов анализа данных иллюстрирует таблица 1.1.

Характеристики

Виды анализа данных

Информационно-поисковый анализ

Оперативно-аналитический анализ

Интеллектуальный анализ

Виды запросов

Регламентированные

Нерегламентированные

Глубокий анализ

Вид получаемых данных

Выборки сырых данных

Обобщенная, сгруппированная, агрегированная информация

Модели, шаблоны, закономерности, знания

Решаемые задачи

Получение выборок данных

Грубый разведочный анализ, проверка заранее сформулированных гипотез

Получение новых, нетривиальных, скрытых знаний

Уровень интерактивности

Интерактивное взаимодействие с информацией

Таблица 1.1 - Сравнение видов анализа данных

В соответствии с рассмотренными выше видами анализа данных аналитические системы можно разделить на следующие группы:

1. Системы корпоративной отчетности:

§ используются для контроля оперативной ситуации и анализа отклонений (отвечают на вопрос «что происходит»);

§ предоставляют оперативные данные о результатах деятельности в виде заранее заданных форм отчетности;

§ базируются на информационно-поисковом анализе данных;

§ могут не использовать хранилище данных, а брать данные непосредственно из OLTP-систем;

§ предназначены для широкого круга конечных пользователей (клиенты, партнеры, фискальные учреждения).

2. Системы аналитической обработки данных и аналитической отчетности (OLAP-системы - системы оперативной аналитической обработки, On-Line Analytical Processing):

§ позволяют выполнять многомерный анализ данных по различным срезам;

§ обладают развитыми средствами аналитической отчетности и визуализации данных в виде различных типов таблиц, графиков и диаграмм;

§ базируются на оперативно-аналитическом анализе данных;

§ чаще всего используют хранилище данных, оптимизированное под задачи многомерного анализа данных;

§ ориентированы на пользователей, которым требуется постоянное интерактивное взаимодействие с информацией (менеджеры, аналитики).

3. Системы глубокого анализа данных:

§ обладают развитыми инструментами для проведения глубокого анализа;

§ позволяют получить нетривиальные, скрытые знания;

§ используют хранилище данных в качестве источника информации;

§ базируются на интеллектуальном анализе данных;

§ предназначены для аналитиков, обладающих знаниями в области методов анализа данных;

§ позволяют создавать законченные приложения для конечных пользователей в виде построенных моделей, шаблонов и отчетов.

Схематичное описание разделения аналитических систем по вышепредставленным группам отображено на рисунке 1.1.1.

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

Рисунок 1.1.1 - Виды аналитических систем

OLAP-системы создаются для конечных пользователей и аналитиков, предоставляя им инструменты для анализа данных и проверки возникающих гипотез.

Известен тест, созданный в 1995 году, определяющий критерии, по которым систему можно отнести к классу OLAP-систем.

Этот тест получил название FASMI (Fast Analysis of Shared Multidimensional Information) (быстрый анализ совместно используемой многомерной информации) и в настоящее время широко используется.

В соответствии с тестом FASMI OLAP определяется пятью ключевыми словами:

§ Fast (Быстрый);

§ Analysis (Анализ);

§ Shared (Разделяемой);

§ Multidimensional (Многомерной);

§ Information (Информации).

Схематичное представление теста изображено на рисунке 1.1.2.


Рисунок 1.1.2 - Тест FASMI.

1. Fast (Быстрый)

OLAP-система должна обеспечить выдачу ответов на большинство запросов в пределах приблизительно 5 секунд. Для простых запросов этот показатель может быть 1 секунда, а для редкостных по сложности запросов он может достигать 20 секунд.

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

Но даже если система предупредит пользователя о продолжительном времени обработки аналитического запроса, пользователь может отвлечься и потерять мысль, что негативно скажется на качестве анализа.

Такой скорости обработки нелегко достигнуть на огромных массивах данных, особенно если требуются нестандартные и сложные запросы, формируемые «на лету».

Для достижения данной цели разработчики OLAP-систем используют разные методы:

Динамическая предобработка данных;

Создание специальных программно-аппаратных решений;

Применение аппаратных платформ с большей производительностью.

Критерий скорости является наиболее критическим в определении принадлежности системы к классу OLAP.

2. Analysis (Анализ).

OLAP-система должна справляться с любым логическим и статистическим анализом, характерным для данной прикладной области.

Все требуемые функциональные возможности анализа должны обеспечиваться понятным для пользователя способом.

OLAP-система должна обладать гибкостью в выдаче графических результатов анализа и позволять формировать отчеты любым желаемым способом без необходимости программирования.

3. Shared (Разделяемой).

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

4. Multidimensional (Многомерной).

OLAP-система должна обеспечивать многомерное представление данных. Речь не идет о числе измерений многомерной модели данных или размерах каждого измерения. Это зависит от конкретной прикладной области и решаемых аналитических задач.

5. Information (Информации).

OLAP-система должна обеспечивать получение необходимой информации в условиях реального приложения.

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

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

Галина Акимова, Матвей Пашкин

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

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

Однако для решения современных аналитических задач, особенно учитывая огромный объем исходной информации (в первую очередь из Интернета), этого явно недостаточно. В качестве примера того, что нужно сегодня заказчикам, можно привести разработанную в Колумбийском университете программу Newsblaster. Первоначально она предназначалась для упрощения поиска информации в Web, но на самом деле она в состоянии извлекать из Интернета любые важные новости. Эта система просматривает новостные сайты, сортируя найденную информацию по темам, определяет степень похожести текстов и формирует новость в виде комментария из пяти предложений. Примерно 88% из тех, кто использовал это решение, признают, что намного удобнее работать с этой программой, чем "ходить" по различным Web-сайтам в поисках новостей.

Следует заметить, что проблема работы с огромным количеством информации имеет два аспекта: один - это автоматический сбор информации (на что, собственно, и ориентированы упомянутая выше система и аналоги), а другой - автоматический разбор поступившей информации по данной тематике, проведенный на основе анализа текста документа.

Согласно А. Харламову , существующие подходы к анализу текстов можно разбить на два класса. К первому классу предлагается отнести быстрые алгоритмы, не зависящие от языка и предметной области, которые используют статистические методы. Второй класс образуют достаточно изощренные, дающие хороший результат, но сравнительно медленные подходы, зависящие от языка и предметной области и в большинстве своем основанные на лингвистических методах.

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

Из существующих систем, с точки зрения авторов, наиболее интересна система ТЕРМИН-5, использующая лексико-статистический метод рубрицирования текстов. Достоинство лексико-статистического метода - его высокая универсальность, поскольку смысл рубрики в нем определяется только набором обучающих текстов . Система позволяет полностью автоматизировать процесс рубрицирования, обеспечивая настройку на рубрикатор по обучающей выборке текстов и выработку решающего правила отнесения документа к той или иной рубрике. Она ориентирована на рубрикацию реальных потоков текстовых сообщений СМИ .

Вообще говоря, сегмент аналитических систем, ориентированных на математический и статистический анализ различных количественных и качественных показателей, развивается на рынке ПО уже давно. Однако до полного решения задачи анализа огромного объема текстовой информации, содержащейся в печатных изданиях, новостных лентах информационных агентств, на тематических сайтах в Интернете, еще достаточно далеко.

Построение систем авторубрикации

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

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

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

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

Построение обучающей выборки

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

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

Обучение рубрикатора

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

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

Использование рубрикатора

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

Описанный выше процесс автоматического определения принадлежности входящей информации той или иной рубрике называется авторубрикацией.

Предварительная обработка информации

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

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

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

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

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

Электронные и бумажные документы. Технология работы с бумажными документами начинается обычно с перевода их в электронный вид, т. е. с операции сканирования.

Аналитическая обработка

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

Статистические отчеты. Аналитические отчеты, базирующиеся на статистической обработке введенной информации, помогают не только быстро оценить качество имеющихся данных, но и зачастую сделать некоторый прогноз на будущее. Такие отчеты могут строиться как с использованием стандартных статистических пакетов (особенно это касается построения прогнозов), так и в результате экспорта данных в Microsoft Excel.

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

Информационно-аналитическая система "Астарта"

Ниже мы рассмотрим работу описанных выше методов обработки информации на примере информационно-аналитической системы "Астарта" (разработчик - компания Cognitive Technologies, http://www.cognitive.ru). Это программное решение базируется на технологии "Евфрат" и предназначено для сбора, обработки и анализа неструктурированной информации, получаемой из Интернета, печатных материалов, СМИ и других источников. Оно имеет клиент-серверную архитектуру с возможностью публикации на сервере документов, предназначенных для общего пользования, и форматов новостных лент. В системе предусмотрено три разнотипных рабочих места и соответственно три типа пользователей: администратор, эксперт и пользователь.

Администрирование

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

Рис. 1. Окно администратора системы.

Назначать права доступа можно как каждому пользователю системы отдельно, так и группе пользователей. В последнем случае для всех пользователей группы автоматически устанавливаются права данной группы. Если пользователь состоит в нескольких группах, то его права расширяются в соответствии с правами, которые он имеет в каждой группе.

Администратор - это выделенный пользователь системы, который не должен иметь прав на выполнение пользовательских функций.

Работа с рубрикатором

Формирование рубрикатора - один из самых важных шагов при подготовке системы к работе, поскольку именно он определяет тематику, по которой будет разбираться входящая информация. Система поддерживает работу с иерархическим рубрикатором неограниченной глубины. Рубрикатор можно создать непосредственно из интерфейса системы или подготовить заранее в произвольном текстовом редакторе и импортировать в систему. При подготовке текста рубрикатора разрешено использовать произвольные разделители уровней иерархии.

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

Качество работы построенного авторубрикатора системы определяется по результатам автоматического определения тематики поступающей информации. Авторубрикация документов проводится на этапе ввода информации в БД. Документам присваивается оценка релевантности, характеризующая принадлежность той или иной рубрике (или нескольким рубрикам). Документы, тематика которых не была установлена, относятся к последней по порядку рубрике рубрикатора (например, "Разное"). При неудовлетворительном качестве определения тематики авторубрикатор следует переобучить, уточнив состав обучающей выборки, и заново рубрицировать тот же набор документов (рис. 2).

Рис. 2. Процесс построения рубрикатора.

Результат работы программы обучения (набор характеристических терминов) доступен для просмотра и корректировки. Эксперту предоставляется возможность откорректировать вес того или иного термина, добавить новый термин или удалить ненужный.

Подготовленный и обученный рубрикатор публикуется на сервере системы или сразу становится доступен для дальнейшей работы (если используется локальная версия системы).

Работа пользователя

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

По умолчанию система настроена так, что один документ одновременно рубрицируется по нескольким рубрикам. Однако существует возможность - и это удобно при составлении статистических отчетов - настроить авторубрицирование по принадлежности документа только одной рубрике.

Ввод документов

Система ввода поддерживает автоматический просмотр новостных страниц заранее указанных сайтов с заданной периодичностью и в соответствии с составленным расписанием. Применение системы расписаний позволяет распределить работу по вводу новостей, относя ее, например, на ночное или обеденное время.

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

При обработке новостных лент различных форматов в первую очередь определяется формат данной ленты. Заметим, что в одном потоке могут находиться новостные ленты различных форматов. Затем из новостной ленты выделяются отдельные новости, которые передаются системе ввода. Новостные ленты, формат которых системе не удалось определить автоматически, собираются в заранее указанном месте. В дальнейшем можно вручную указать формат, по которому их следует вводить. Кроме того, предусмотрена возможность ввода в "Астарту" так называемых неформатных документов, т. е. документов, формат которых в системе не описан. Указание, что сейчас будет вводиться поток неформатных документов, делается вручную.

Для обработки бумажных документов в системе есть возможность запустить программу сканирования и указать в ее интерфейсе место расположения полученных графических образов документов. Последующий ввод таких документов в систему выполняется вручную, с использованием дополнительной возможности распознавания текста документа "на лету" (drag&recog) при заполнении реквизитов документа. Возможна также автоматическая полнотекстовая индексация графического документа путем "слепого" распознавания всего графического образа и передачи распознанного текста модулю полнотекстовой индексации.

Поиск документов

Разветвленная поисковая система программного комплекса "Астарта" (рис. 3) обеспечивает составление сложных запросов, поддерживая организацию полнотекстового, контекстного и реквизитного поиска документов, причем как по локальному, так и по серверному хранилищу данных. При организации поиска используются методы морфологического анализа, позволяющие находить в тексте документа не только точно указанное слово (или словосочетание), но и все его словоформы. Поиск с учетом морфологии можно проводить как по тексту документа, так и по его реквизитам.


Рис. 3. Формирование запроса на поиск документов.

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

  • наличие словарей при реквизитах системы (упрощает выбор необходимого значения);
  • возможность указания даты на "естественном" языке (например, выбор даты "март 2003 г." равносилен указанию интервала с 1.03.03 по 31.03.03);
  • формирование запроса по результатам поиска;
  • хранение предопределенных запросов.

Формирование дайджестов

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


Рис. 4. Формирование сводного отчета (дайджеста).

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

Построение статистических сводок

Основная задача статистического анализа состоит в том, чтобы определить тенденции развития исследуемой проблемы. Наиболее наглядные способы представления результатов - временной ряд, показывающий развитие исследуемой величины с течением времени, и диаграмма, показывающая долю исследуемой величины относительно других величин. Если для решения задач прогнозирования требуется применение различных статистических пакетов, использующих специальные алгоритмы (например, алгоритм авторегрессии и интегрального скользящего среднего АРИСС - ARIMA), то качественную оценку, полученную на основании построенных временных рядов, можно получить с помощью стандартного пакета Excel.

В системе "Астарта" реализованы оба способа построения различных статистических сводок: с использованием возможностей пакета Statistica 5.5 либо стандартного пакета Excel. При экспорте в Excel из интерфейса системы можно указать тип представления информации: график, круговая диаграмма или таблица. Пример временного ряда, построенного с использованием пакета Excel для рубрикатора сайта Lenta.ru, приведен на рис. 5.

Заключение

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

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

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

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

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

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

4. Классификация OLAP-продуктов.

5. Принципы работы OLAP-клиентов.

7. Сферы применения OLAP-технологий.

8. Пример использования OLAP-технологий для анализа в сфере продаж.

1. Место OLAP в информационной структуре предприятия.

Термин "OLAP" неразрывно связан с термином "хранилище данных" (Data Warehouse).

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

Задача хранилища - предоставить "сырье" для анализа в одном месте и в простой, понятной структуре.

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

Под хранилищем можно понимать не обязательно гигантское скопление данных - главное, чтобы оно было удобно для анализа.

Централизация и удобное структурирование - это далеко не все, что нужно аналитику. Ему ведь еще требуется инструмент для просмотра, визуализации информации. Традиционные отчеты, даже построенные на основе единого хранилища, лишены одного - гибкости. Их нельзя "покрутить", "развернуть" или "свернуть", чтобы получить желаемое представление данных. Вот бы ему такой инструмент, который позволил бы разворачивать и сворачивать данные просто и удобно! В качестве такого инструмента и выступает OLAP.

Хотя OLAP и не представляет собой необходимый атрибут хранилища данных, он все чаще и чаще применяется для анализа накопленных в этом хранилище сведений.

Место OLAP в информационной структуре предприятия (рис. 1).

Рисунок 1 . Место OLAP в информационной структуре предприятия

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

Подытоживая, можно определить OLAP как совокупность средств многомерного анализа данных, накопленных в хранилище.

2. Оперативная аналитическая обработка данных.

В основе концепции OLAP лежит принцип многомерного представления данных. В 1993 году E. F. Codd рассмотрел недостатки реляционной модели, в первую очередь, указав на невозможность "объединять, просматривать и анализировать данные с точки зрения множественности измерений, то есть самым понятным для корпоративных аналитиков способом", и определил общие требования к системам OLAP, расширяющим функциональность реляционных СУБД и включающим многомерный анализ как одну из своих характеристик.

По Кодду, многомерное концептуальное представление данных (multi-dimensional conceptual view) представляет собой множественную перспективу, состоящую из нескольких независимых измерений, вдоль которых могут быть проанализированы определенные совокупности данных.

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

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

Операция спуска (drilling down) соответствует движению от высших ступеней консолидации к низшим; напротив, операция подъема (rolling up) означает движение от низших уровней к высшим (рис. 2).


Рисунок 2. Измерения и направления консолидации данных

3. Требования к средствам оперативной аналитической обработки.

Многомерный подход возник практически одновременно и параллельно с реляционным. Однако, только начиная с середины девяностых годов, а точнее с
1993 г., интерес к МСУБД начал приобретать всеобщий характер. Именно в этом году появилась новая программная статья одного из основоположников реляционного подхода Э. Кодда , в которой он сформулировал 12 основных требований к средствам реализации OLAP (табл. 1).

Таблица 1.

Многомерное представление данных

Средства должны поддерживать многомерный на концептуальном уровне взгляд на данные.

Прозрачность

Пользователь не должен знать о том, какие конкретные средства используются для хранения и обработки данных, как данные организованы и откуда они берутся.

Доступность

Средства должны сами выбирать и связываться с наилучшим для формирования ответа на данный запрос источником данных. Средства должны обеспечивать автоматическое отображение их собственной логической схемы в различные гетерогенные источники данных.

Согласованная производительность

Производительность практически не должна зависеть от количества Измерений в запросе.

Поддержка архитектуры клиент-сервер

Средства должны работать в архитектуре клиент-сервер.

Равноправность всех измерений

Ни одно из измерений не должно быть базовым, все они должны быть равноправными (симметричными).

Динамическая обработка разреженных матриц

Неопределенные значения должны храниться и обрабатываться наиболее эффективным способом.

Поддержка многопользовательского режима работы с данными

Средства должны обеспечивать возможность работать более чем одному пользователю.

Поддержка операций на основе различных измерений

Все многомерные операции (например Агрегация) должны единообразно и согласованно применяться к любому числу любых измерений.

Простота манипулирования данными

Средства должны иметь максимально удобный, естественный и комфортный пользовательский интерфейс.

Развитые средства представления данных

Средства должны поддерживать различные способы визуализации (представления) данных.

Неограниченное число измерений и уровней агрегации данных

Не должно быть ограничений на число поддерживаемых Измерений.

Правила оценки программных продуктов класса OLAP

Набор этих требований, послуживших фактическим определением OLAP, следует рассматривать как рекомендательный, а конкретные продукты оценивать по степени приближения к идеально полному соответствию всем требованиям.

Позже определение Кодда было переработано в так называемый тест FASMI, требующий, чтобы OLAP-приложение предоставляло возможности быстрого анализа разделяемой многомерной информации.

Помнить 12 правил Кодда слишком обременительно для большинства людей. Оказались, что можно резюмировать OLAP-определение только пятью ключевыми словами: Быстрый Анализ Разделяемой Многомерной Информации - или, кратко - FASMI (в переводе с английского: F ast A nalysis of S hared M ultidimensional I nformation).

Это определение впервые было сформулировано в начале 1995 года и с тех пор не нуждалось в пересмотре.

FAST (Быстрый) - означает, что система должна обеспечивать выдачу большинства ответов пользователям в пределах приблизительно пяти секунд. При этом самые простые запросы обрабатываются в течение одной секунды и очень немногие - более 20-ти секунд. Исследования показали, что конечные пользователи воспринимают процесс неудачным, если результаты не получены по истечении 30 секунд.

На первый взгляд может казаться удивительным, что при получении отчета за минуту, на который не так давно требовались дни, пользователь очень быстро начинает скучать во время ожиданий, и проект оказывается намного менее успешным, чем в случае мгновенного ответа, даже ценой менее детального анализа.

ANALYSIS (Анализ) означает, что система может справляться с любым логическим и статистическим анализом, характерным для данного приложения, и обеспечивает его сохранение в виде, доступном для конечного пользователя.

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

SHARED (Разделяемой) означает, что система осуществляет все требования защиты конфиденциальности (возможно до уровня ячейки) и, если множественный доступ для записи необходим, обеспечивает блокировку модификаций на соответствующем уровне. Не во всех приложениях есть необходимость обратной записи данных. Однако количество таких приложений растет, и система должна быть способна обработать множественные модификации своевременным, безопасным способом.

MULTIDIMENSIONAL (Многомерной) - это ключевое требование. Если бы нужно было определить OLAP одним словом, то выбрали бы его. Система должна обеспечить многомерное концептуальное представление данных, включая полную поддержку для иерархий и множественных иерархий, поскольку это определенно наиболее логичный способ анализировать бизнес и организации. Не установлено минимальное число измерений, которые должны быть обработаны, поскольку оно также зависит от приложения, и большинство продуктов OLAP имеет достаточное количество измерений для тех рынков, на которые они нацелены.

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

Тест FASMI - разумное и понятное определение целей, на достижение которых ориентированы OLAP.

4. Классификация OLAP -продуктов.

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

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

Классификация по способу хранения данных

Многомерные кубы строятся на основе исходных и агрегатных данных. И исходные и агрегатные данные для кубов могут храниться как в реляционных, так и многомерных базах данных. Поэтому в настоящее время применяются три способа хранения данных: MOLAP (Multidimensional OLAP), ROLAP (Relational OLAP) и HOLAP (Hybrid OLAP ). Соответственно, OLAP -продукты по способу хранения данных делятся на три аналогичные категории:

1. В случае MOLAP , исходные и агрегатные данные хранятся в многомерной БД или в многомерном локальном кубе.

2. В ROLAP -продуктах исходные данные хранятся в реляционных БД или в плоских локальных таблицах на файл-сервере. Агрегатные данные могут помещаться в служебные таблицы в той же БД. Преобразование данных из реляционной БД в многомерные кубы происходит по запросу OLAP -средства.

3. В случае использования HOLAP архитектуры исходные данные остаются в реляционной базе, а агрегаты размещаются в многомерной. Построение OLAP -куба выполняется по запросу OLAP -средства на основе реляционных и многомерных данных.

Классификация по месту размещения OLAP -машины.

По этому признаку OLAP -продукты делятся на OLAP -серверы и OLAP -клиенты:

· В серверных OLAP -средствах вычисления и хранение агрегатных данных выполняются отдельным процессом - сервером. Клиентское приложение получает только результаты запросов к многомерным кубам, которые хранятся на сервере. Некоторые OLAP -серверы поддерживают хранение данных только в реляционных базах, некоторые - только в многомерных. Многие современные OLAP -серверы поддерживают все три способа хранения данных: MOLAP , ROLAP и HOLAP .

MOLAP.

MOLAP - это Multidimensional On-Line Analytical Processing, то есть Многомерный OLAP. Это означает, что сервер для хранения данных использует многомерную базу данных (МБД). Смысл использования МБД очевиден. Она может эффективно хранить многомерные по своей природе данные, обеспечивая средства быстрого обслуживания запросов к базе данных. Данные передаются от источника данных в многомерную базу данных, а затем база данных подвергается агрегации. Предварительный расчет - это то, что ускоряет OLAP-запросы, поскольку расчет сводных данных уже произведен. Время запроса становится функцией исключительно времени, необходимого для доступа к отдельному фрагменту данных и выполнения расчета. Этот метод поддерживает концепцию, согласно которой работа производится единожды, а результаты затем используются снова и снова. Многомерные базы данных являются относительно новой технологией. Использование МБД имеет те же недостатки, что и большинство новых технологий. А именно - они не так устойчивы, как реляционные базы данных (РБД), и в той же мере не оптимизированы. Другое слабое место МБД заключается в невозможности использовать большинство многомерных баз в процессе агрегации данных, поэтому требуется время для того, чтобы новая информация стала доступна для анализа.

ROLAP.

ROLAP - это Relational On-Line Analytical Processing, то есть Реляционный OLAP. Термин ROLAP обозначает, что OLAP-сервер базируется на реляционной базе данных. Исходные данные вводятся в реляционную базу данных, обычно по схеме "звезда" или схеме "снежинка", что способствует сокращению времени извлечения. Сервер обеспечивает многомерную модель данных с помощью оптимизированных SQL-запросов.

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

Агрегированные/Предварительно агрегированные данные.

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

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

· OLAP -клиент устроен по-другому. Построение многомерного куба и OLAP -вычисления выполняются в памяти клиентского компьютера. OLAP -клиенты также делятся на ROLAP и MOLAP . А некоторые могут поддерживать оба варианта доступа к данным.

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

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

При использовании OLAP-сервера необходимо изучить 2 разные системы, иногда от различных поставщиков, – для создания кубов на сервере, и для разработки клиентского приложения.

OLAP-клиент предоставляет единый визуальный интерфейс для описания кубов и настройки к ним пользовательских интерфейсов.

Итак, в каких случаях применение OLAP-клиента для пользователей может оказаться эффективнее и выгоднее использования OLAP-сервера?

· Экономическая целесообразность применения OLAP -сервера возникает, когда объемы данных очень велики и непосильны для OLAP -клиента, иначе более оправдано применение последнего. В этом случае OLAP -клиент сочетает в себе высокие характеристики производительности и низкую стоимость.

· Мощные ПК аналитиков – еще один довод в пользу OLAP -клиентов. При применении OLAP -сервера эти мощности не используются.

Среди преимуществ OLAP-клиентов можно также назвать следующее:

· Затраты на внедрение и сопровождение OLAP -клиента существенно ниже, чем затраты на OLAP -сервер.

· При использовании OLAP -клиента со встроенной машиной передача данных по сети производится один раз. При выполнении OLAP -операций новых потоков данных не порождается.

5. Принципы работы OLAP -клиентов.

Рассмотрим процесс создания OLAP-приложения с помощью клиентского инструментального средства (рис. 1).

Рисунок 1. Создание OLAP-приложения с помощью клиентского ROLAP-средства

Принцип работы ROLAP-клиентов – предварительное описание семантического слоя, за которым скрывается физическая структура исходных данных. При этом источниками данных могут быть: локальные таблицы, РСУБД. Список поддерживаемых источников данных определяется конкретным программным продуктом. После этого пользователь может самостоятельно манипулировать понятными ему объектами в терминах предметной области для создания кубов и аналитических интерфейсов.

Принцип работы клиента OLAP-сервера иной. В OLAP-сервере при создании кубов пользователь манипулирует физическими описаниями БД. При этом в самом кубе создаются пользовательские описания. Клиент OLAP-сервера настраивается только на куб.

При создании семантического слоя источники данных – таблицы Sales и Deal – описываются понятными конечному пользователю терминами и превращаются в «Продукты» и «Сделки». Поле «ID» из таблицы «Продукты» переименовывается в «Код», а «Name » - в «Товар» и т.д.

Затем создается бизнес-объект «Продажи». Бизнес-объект – это плоская таблица, на основе которой формируется многомерный куб. При создании бизнес-объекта таблицы «Продукты» и «Сделки» объединяются по полю «Код» товара. Поскольку для отображения в отчете не потребуются все поля таблиц – бизнес-объект использует только поля «Товар», «Дата» и «Сумма».

В нашем примере на базе бизнес-объекта «Продажи» создан отчет по продажам товаров по месяцам.

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

Все настройки OLAP-приложения могут храниться в выделенном репозитории метаданных, в приложении или в системном репозитории многомерной базы данных. Реализация зависит от конкретного программного продукта.

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

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

6. Выбор архитектуры OLAP-приложения.

При реализации информационно-аналитической системы важно не ошибиться в выборе архитектуры OLAP-приложения. Дословный перевод термина On-Line Analytical Process - «оперативная аналитическая обработка» - часто воспринимается буквально в том смысле, что поступающие в систему данные оперативно анализируются. Это заблуждение - оперативность анализа никак не связана с реальным временем обновления данных в системе. Эта характеристика относится к времени реакции OLAP-системы на запросы пользователя. При этом зачастую анализируемые данные представляют собой снимок информации «на вчерашний день», если, например, данные в хранилищах обновляются раз в сутки.

В этом контексте более точен перевод OLAP как «интерактивная аналитическая обработка». Именно возможность анализа данных в интерактивном режиме отличает OLAP-системы от систем подготовки регламентированных отчетов.

Другой особенностью интерактивной обработки в формулировке родоначальника OLAP Э. Кодда является возможность «объединять, просматривать и анализировать данные с точки зрения множественности измерений, т. е. самым понятным для корпоративных аналитиков способом». У самого Кодда термин OLAP обозначает исключительно конкретный способ представления данных на концептуальном уровне - многомерный. На физическом уровне данные могут храниться в реляционных базах данных, однако на деле OLAP-инструменты, как правило, работают с многомерными базами данных, в которых данные упорядочены в виде гиперкуба (рис. 1).

Рисунок 1. OLAP – куб (гиперкуб, метакуб)

При этом актуальность этих данных определяется моментом наполнения гиперкуба новыми данными.

Очевидно, что время формирования многомерной базы данных существенно зависит от объема загружаемых в нее данных, поэтому разумно ограничить этот объем. Но как при этом не сузить возможности анализа и не лишить пользователя доступа ко всей интересующей информации? Существует два альтернативных пути: Analyze then query («Сначала проанализируй - затем запроси дополнительную информацию») и Query then analyze («Сначала запроси данные - затем анализируй»).

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

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

К достоинствам второго подхода следует отнести «свежесть» информации, которую пользователь получает в виде многомерного отчета - «микрокуба ». Микрокуб формируется на основе только что запрошенной информации из актуальной реляционной базы данных. Работа с микрокубом осуществляется в интерактивном режиме - получение срезов информации и ее детализация в рамках микрокуба осуществляется моментально. Другим положительным моментом является то, что проектирование структуры и наполнение микрокуба осуществляется пользователем «на лету», без участия администратора баз данных. Однако подход страдает и серьезными недостатками. Пользователь, не видит общей картины и должен заранее определяться с направлением своего исследования. В противном случае запрошенный микрокуб может оказаться слишком мал и не содержать всех интересующих данных, а пользователю придется запрашивать новый микрокуб, затем новый, затем еще и еще. Подход Query then analyze реализует инструментальное средство BusinessObjects одноименной компании и инструментальные средства платформы Контур компании Intersoft Lab .

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

На работе единой многомерной базы данных практически не сказывается количество обращающихся к ней пользователей. Они лишь читают имеющиеся там данные в отличие от подхода Query then analyze , при котором количество микрокубов в предельном случае может расти с той же скоростью, что и количество пользователей.

При данном подходе увеличивается нагрузка на ИТ-службы, которые кроме реляционных вынуждены обслуживать еще и многомерные базы данных. Именно эти службы несут ответственность за своевременное автоматическое обновление данных в многомерных базах данных.

Наиболее яркими представителями подхода «Analyze then query » являются инструментальные средства PowerPlay и Impromptu компании Cognos .

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

7. Сферы применения OLAP-технологий.

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

Рассмотрим некоторые сферы применения OLAP-технологий, взятые из реальной жизни.

1. Продажи.

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

2. Закупки.

Задача обратно противоположная анализу продаж. Многие предприятия закупают комплектующие и материалы у поставщиков. Торговые предприятия закупают товары для перепродажи. Возможных задач при анализе закупок множество, от планирования денежных средств на основе прошлого опыта, до контроля за менеджерами , выбирающими поставщиков.

3. Цены.

С анализом закупок смыкается анализ рыночных цен. Целью этого анализа является оптимизация расходов, выбор наиболее выгодных предложений.

4. Маркетинг.

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

5. Склад.

Анализ структуры остатков на складе в разрезе видов товаров, складов, анализ сроков хранения товаров, анализ отгрузки по получателям и многие другие важные для предприятия виды анализа возможны при наличии в организации складского учета.

6. Движение денежных средств.

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

7. Бюджет.

Одна из самых благодатных областей применения OLAP-технологий. Не даром ни одна современная система бюджетирования не считается завершенной без наличия в ее составе OLAP-инструментария для анализа бюджета. Большинство бюджетных отчетов легко строятся на основе OLAP-систем. При этом отчеты отвечают на очень широкую гамму вопросов: анализ структуры расходов и доходов, сравнение расходов по определенным статьям у разных подразделений, анализ динамики и тенденций расходов на определенные статьи, анализ себестоимости и прибыли.

8. Бухгалтерские счета.

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

9. Финансовая отчетность.

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

10. Посещаемость сайта.

Лог-файл Интернет-сервера многомерен по природе, а значит подходит для OLAP-анализа. Фактами являются: количество посещений, количество хитов, время проведенное на странице и другая информация, имеющаяся в логе.

11. Объемы производства.

Это еще один пример статистического анализа. Таким образом, можно анализировать объемы выращенного картофеля, выплавленной стали, произведенного товара.

12. Потребление расходных материалов.

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

13. Использование помещений.

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

14. Текучесть кадров на предприятии.

Анализ текучести кадров на предприятии в разрезе филиалов, отделов, профессий, уровня образования, пола, возраста, времени.

15. Пассажирские перевозки.

Анализ количества проданных билетов и сумм в разрезе сезонов, направлений, видов вагонов (классов), типов поездов (самолетов).

Этим списком не ограничиваются сферы применения OLAP - технологий. Для примера рассмотрим технологию OLAP -анализа в сфере продаж.

8. Пример использования OLAP -технологий для анализа в сфере продаж.

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

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

Измерение «группы товаров» разрабатывается так, чтобы в максимальной степени отразить структуру продаваемой продукции. При этом важно соблюсти определенный баланс, чтобы, с одной стороны, избежать излишней детализации (количество групп должно быть обозримым), а с другой - не упустить существенный сегмент рынка.

Измерение «Клиенты» отражает структуру продаж по территориально-географическому признаку. В каждом измерении могут существовать свои ие рархии, например, в данном измерении это может быть структура: Страны – Регионы – Города – Клиенты.

Для анализа эффективности деятельности подразделений следует создать свое измерение. Например, можно выделить два уровня иерархии: департаменты и входящие в них отделы, что и должно найти отражение в измерении «Подразделения».

По сути, измерения «Время», «Товары», «Заказчики» достаточно полно определяют пространство предметной области.

Дополнительно, полезно разбить это пространство на условные области, взяв за основу вычисляемые характеристики, например, диапазоны объема сделок в стоимостном выражении. Тогда весь бизнес можно разделить на ряд стоимостных диапазонов, в котором он осуществляется. В данном примере можно ограничиться следующими показателями: суммами продаж товаров, количеством проданных товаров, величиной дохода, количеством сделок, количеством клиентов, объемом закупок у производителей.

OLAP – куб для анализа будет иметь вид (рис. 2):


Рисунок 2. OLAP – куб для анализа объема продаж

Вот именно такой трехмерный массив в терминах OLAP и называется кубом. На самом деле, с точки зрения строгой математики кубом такой массив будет далеко не всегда: у настоящего куба количество элементов во всех измерениях должно быть одинаковым, а у кубов OLAP такого ограничения нет. Куб OLAP совсем не обязательно должен быть трехмерным. Он может быть и двух- , и многомерным - в зависимости от решаемой задачи. Серьезные OLAP-продукты рассчитаны на количество измерений порядка 20. Более простые настольные приложения поддерживают где-то 6 измерений.

Должны быть заполнены далеко не все элементы куба: если нет информации о продажах Товара 2 Клиенту 3 в третьем квартале, значение в соответствующей ячейке просто не будет определено.

Однако куб сам по себе для анализа не пригоден. Если еще можно адекватно представить или изобразить трехмерный куб, то с шести- или девятнадцатимерным дело обстоит значительно хуже. Поэтому перед употреблением из многомерного куба извлекают обычные двумерные таблицы. Эта операция называется "разрезанием" куба. Аналитик как бы берет и "разрезает" измерения куба по интересующим его меткам. Этим способом аналитик получает двумерный срез куба (отчет) и с ним работает. Структура отчета представлена на рисунке 3.

Рисунок 3. Структура аналитического отчета

Разрежем наш OLAP – куб и получим отчет о продажах за третий квартал, он будет иметь следующий вид (рис.4).

Рисунок 4. Отчет о продажах за третий квартал

Можно разрезать куб вдоль другой оси и получить отчет о продажах группы товаров 2 в течение года (рис. 5).

Рисунок 5. Поквартальный отчет о продажах товара 2

Аналогично можно проанализировать отношения с клиентом 4, разрезав куб по метке Клиенты (рис. 6)

Рисунок 6. Отчет о поставках товаров клиенту 4

Можно детализировать отчет по месяцам или говорить о поставках товаров в определенный филиал клиента.

В течение многих лет информационные технологии концентрировались на построении систем поддержки обработки корпоративных транзакций. Такие системы должны быть визуально отказоустойчивыми и обеспечивать быстрый отклик. Эффективное решение было обеспечено OLTP, которые сосредотачивались на распределенном реляционном окружении БД.

Более поздним достижением в этой области явилось добавление архитектуры клиент – сервер. Было издано много инструментов для развития OLTP приложений.

Доступ к данным часто требуется как OLTP приложениям, так и информационным системам поддержки решений. К сожалению, попытка обслужить оба типа запросов может быть проблематична. Поэтому некоторые компании избрали путь разделения БД на OLTP тип и OLAP тип.

OLAP (Online Analytical Processing – оперативная аналитическая обработка) – это информационный процесс, который дает возможность пользователю запрашивать систему, проводить анализ и т.д. в оперативном режиме (онлайн). Результаты генерируются в течении секунд.

С другой стороны, в OLTP системе огромные объемы данных обрабатываются так скоро, как они поступают на вход.

Для обеспечения OLAP необходимо работать с хранилищем данных (или многомерным хранилищем), а также с набором инструментальных средств, обычно ч многомерными способностями. Этими средствами могут быть инструментарий запросов, электронные таблицы, средства добычи данных (Data Mining), средства визуализации данных и др.

В большом числе публикаций аббревиатурой OLAP обозначается не только многомерный взгляд на данные, но и хранение самих данных в многомерной БД. Вообще говоря, это неверно, поскольку сам Кодд отмечает, что реляционные БД были, есть и будут наиболее подходящей технологией для хранения корпоративных данных. Необходимость существует не в новой технологии БД, а скорее, в средствах анализа, дополняющих функции существующих СУБД и достаточно гибких, чтобы предусмотреть и автоматизировать разные виды интеллектуального анализа, присущие OLAP.

По Кодду, многомерное концептуальное представление представляет собой множественную перспективу, состоящую из нескольких независимых измерений, вдоль которых могут быть проанализированы определенные совокупности данных. Одновременный анализ по нескольким измерениям определяется как многомерный анализ. Каждое измерение включает направления консолидации данных, состоящие из серии последовательных уровней обобщения, где каждый вышестоящий уровень соответствует большей степени агрегации данных по соответствующему измерению. Так измерение Исполнитель может определяться направлением консолидации, состоящим из уровней обобщения «предприятие – подразделение – отдел - служащий». Измерение Время может даже включать два направления консолидации – «год – квартал – месяц - день» и «неделя - день», поскольку счет времени по месяцам и по неделям несовместим. В этом случае становится возможным произвольный выбор желаемого уровня детализации информации по каждому из измерений. Операция спуска соответствует движению от высших ступеней консолидации к низшим; напротив, операция подъема означает движение от низших уровней к высшим.

Кодд определил 12 правил, которым должен удовлетворять программный продукт класса OLAP. Эти правила:

2. Прозрачность.

3. Доступность.

6. Равноправие измерений.

Интеллектуальный анализ данных.

Интеллектуальный анализ данных (ИАД), или Data Mining, - термин, используемый для описания открытия знаний в базах данных, выделения знаний, изыскания данных, исследования данных, обработки образцов данных, очистки и сбора данных; здесь же подразумевается сопутствующее ПО. Все эти действия осуществляются автоматически и позволяют получать быстрые результаты даже непрограммистам.

Запрос производится конечным пользователем, возможно на естественном языке. Запрос преобразуется в SQL – формат. SQL запрос по сети поступает в СУБД, которая управляет БД или хранилищем данных. СУБД находит ответ на запрос и доставляет его назад. Пользователь может затем разрабатывать презентацию или отчет в соответствии со своими требованиями.

Многие важные решения в почти любой области бизнеса и социально сферы основываются на анализе больших и сложных БД. ИАД может быть очень полезным в этих случаях.

Методы интеллектуального анализа данных тесно связаны с технологиями OLAP и технологиями построения хранилищ данных. Поэтому наилучшим вариантом является комплексный подход к их внедрению.

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

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

Динамические ИС поддержки решений, напротив, ориентированы на обработку нерегламентированных (ad hoc) запросов аналитиков к данным. Работа аналитиков с этими системами заключается в интерактивной последовательности формирования запросов и изучения их результатов.

Но динамические ИС поддержки решений могут действовать не только в области оперативной аналитической обработки (OLAP). Поддержка принятия управленческих решений на основе накопленных данных может выполняться в трех базовых сферах.

1. Сфера детализированных данных. Это область действия большинства систем, нацеленных на поиск информации. В большинстве случаев реляционные СУБД отлично справляются с возникающими здесь задачами. Общепризнанным стандартом языка манипулирования реляционными данными является SQL. Информационно – поисковые системы, обеспечивающие интерфейс конечного пользователя в задачах поиска детализированной информации, могут использоваться в качестве надстроек как над отдельными базами данных транзакционных систем, так и над общим хранилищем данных.

2. Сфера агрегированных показателей. Комплексный взгляд на собранную в хранилище данных информацию, ее обобщение и агрегация и многомерный анализ являются задачами систем OLAP. Здесь можно или ориентироваться на специальные многомерные СУБД, или оставаться в рамках реляционных технологий. Во втором случае заранее агрегированные данные могут собираться в БД звездообразного вида, либо агрегация информации может производится в процессе сканирования детализированных таблиц реляционной БД.

3. Сфера закономерностей. Интеллектуальная обработка производится методами интеллектуального анализа данных главными задачами которых являются поиск функциональных и логических закономерностей в накопленной информации, построение моделей и правил, которые объясняют найденные аномалии и/или прогнозируют развитие некоторых процессов.

Полная структура информационно – аналитической системы построенной на основе хранилища данных, показана на рис. 3.2. В конкретных реализациях отдельные компоненты этой схемы часто отсутствуют.

Рис.3.2. Структура корпоративной информационно – аналитической системы.

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

В основе оперативной аналитической обработки данных лежит принцип организации информации в гиперкубическую модель. Простейший трехмерный куб данных по поставкам деталей для ранее рассмотренной тестовой базы данных приведен на рис. 3.11. Каждая его ячейка соответствует «факту» – например, объему поставки детали. Вдоль одной грани куба (одного измерения) располагаются месяцы, в течение которых выполнялись отражаемые кубом поставки. Второе измерение составляют виды деталей, а третье – соответствует поставщикам. В каждой ячейке содержится объем поставки для соответствующей комбинации значений по всем трем измерениям. Следует отметить, что при заполнении куба выполнена агрегация значений по поставкам каждого месяца из тестовой базы данных.


3.11. Вариант упрощенного гиперкуба для анализа поставок деталей

Системы класса OLAP различаются по способу представления данных.

Многомерный OLAP (MOLAP ) – в основу этих систем положена многомерная, основанная на динамических массивах структура данных с соответствующими методами доступа. MOLAP реализуется на патентованных технологиях организации многомерных СУБД. Преимуществом этого подхода является удобство выполнения вычислений над ячейками гиперкуба, т.к. под все сочетания измерений заведены соответствующие ячейки (как в электронной таблице). К классическим представителям таких систем можно отнести Oracle Express, SAS Institute MDDB.

Реляционный OLAP (ROLAP) – поддерживает многомерные аналитические модели над реляционными БД. К данному классу систем можно отнести Meta Cube Informix, Microsoft OLAP Services,Hyperion Solutions, SAS Institute Relational OLAP.

Настольный OLAP (Desktop OLAP) – средства генерации многомерных запросов и отчетов для локальных информационных систем (электронные таблицы, плоские файлы). Можно выделить следующие системы – Business Objects, Cognos Power Play.

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




Наиболее распространены системы класса ROLAP. Они позволяют организовать информационную модель над реляционно-полным хранилищем любой структуры либо над специальной витриной данных.

Рис. 3.12. Схема типа «звезда» аналитической витрины по поставкам деталей

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

Причина, по которой схема на рис. 3.12 названа «звездой», достаточно очевидна. Концы «звезды» образуются таблицами измерений, а их связи с таблицей фактов, расположенной в центре, образуют лучи. При такой структуре базы данных большинство запросов из области делового анализа объединяют центральную таблицу фактов с одной или несколькими таблицами измерений. Например, запрос для получения объемов поставок всех деталей в 2004 году по месяцам с разбивкой по поставщикам выглядит следующим образом:

SELECT SUM(VALUE), SUPPLIER.SUPPLIER_NAME, FACT.MONTH_ID

FROM FACT, SUPPLIER

WHERE FACT.YEAR_ID=2004

AND FACT.SUPPLIER_CODE=SUPPLIER.SUPPLIER_CODE

GROUP_BY SUPPLIER_CODE, MONTH_ID

ORDER_BY SUPPLIER_CODE, MONTH_ID.

На рис. 3.13 приведен фрагмент отчета, сформированного в результате заданного запроса.

3.4 Способы аналитической обработки данных

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

Очень часто информационно-аналитические системы, создаваемые в расчете на непосредственное использование лицами, принимающими решения, оказываются чрезвычайно просты в применении, но жестко ограничены в функциональности. Такие статические системы называются Информационными системами руководителя (ИСР), или Executive Information Systems (EIS). Они содержат в себе множества запросов и, будучи достаточными для повседневного обзора, неспособны ответить на все вопросы которые могут возникнуть при принятии решений. Результатом работы такой системы, как правило, являются многостраничные отчеты, после тщательного изучения, которых у аналитика появляется новая серия вопросов. Однако каждый новый запрос, непредусмотренный при проектировании такой системы, должен быть сначала формально описан, закодирован программистом и только затем выполнен. Время ожидания в таком случае может составлять часы и дни, что не всегда приемлемо.

Оперативная аналитическая обработка . Или On-Line Analytical Processing, OLAP – это ключевой компонент организации хранилищ данных. Концепция OLAP была описана в 1993 г. Эдгаром Коддом и имеет следующие требования к приложениям для многомерного анализа:

– многомерное концептуальное представление данных, включая полную поддержку для иерархий и множественных иерархий (ключевое требование OLAP);

– предоставление пользователю результатов анализа за приемлемое время (обычно не более 5 с), пусть даже ценой менее детального анализа;

– возможность осуществления любого логического и статистического анализа, характерного для данного приложения, и его сохранения в доступном для конечного пользователя виде;

– многопользовательский доступ к данным с поддержкой соответствующих механизмов блокировок и средств авторизованного доступа;

– возможность обращаться к любой нужной информации независимо от ее объема и места хранения.

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

Рассмотрим составные части OLAP-системы.

Источники. Источником в OLAP-системах является сервер, поставляющий данные для анализа. В зависимости от области использования OLAP-продукта источником может служить хранилище данных, наследуемая база данных, содержащая общие данные, набор

таблиц, объединяющих финансовые данные или любая комбинация перечисленного.

Хранилище данных . Исходные данные собираются и помещаются в хранилище, спроектированное в соответствии с принципами построения хранилищ данных. ХД представляет из себя реляционную базу данных (РБД). Основная таблица ХД (таблица фактов) содержит числовые значения показателей, по которым собирается статистическая информация.

Многомерная база данных .Хранилище данных служит поставщиком информации для многомерной базы данных, которая является набором объектов. Основными классами этих объектов являются измерения и показатели. К измерениям относятся множества значений (параметров), по которым происходит индексация данных, например, время, регионы, тип учреждения и пр. Каждое измерение заполняется значениями из соответствующих таблиц измерений хранилища данных. Совокупность измерений определяет пространство исследуемого процесса. Под показателями понимаются многомерные кубы данных (гиперкубы). В гиперкубе содержатся сами данные, а также агрегатные суммы по измерениям, входящим в состав показателя. Показатели составляют основное содержание МБД и заполняются в соответствии с таблицей фактов. Вдоль каждой оси гиперкуба данные могут быть организованы в виде иерархии, представляющей различные уровни их детализации. Это позволяет создавать иерархические измерения, по которым при последующем анализе данных будут осуществляться агрегирование или детализация представления данных. Типичным примером иерархического измерения служит список территориальных объектов сгруппированных по районам, областям, округам.

Сервер. Прикладной частью OLAP-системы является OLAP-сервер. Эта составляющая выполняет всю работу (в зависимости от модели системы), и хранит в себе всю информацию, к которой обеспечивается активный доступ. Архитектурой сервера управляют различные концепции. В частности, основной функциональной характеристикой OLAP-продуктов является использование МБД либо РБД для хранения данных.

Клиентское приложение .Данные, структурированные соответствующим образом и хранимые в МБД доступны для анализа с помощью клиентского приложения. Пользователь получает возможность удаленного доступа к данным, формулирования сложных запросов, генерации отчетов, получения произвольных подмножеств данных. Получение отчета сводится к выбору конкретных значений измерений и построению сечения гиперкуба. Сечение определяется выбранными значениями измерений. Данные по остальным измерениям суммируются.

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

Клиентские OLAP-средства (например, Pivot Tables в Excel 2000 фирмы Microsoft или ProClarity фирмы Knosys) представляют собой приложения, осуществляющие вычисление агрегатных данных и их отображение. При этом сами агрегатные данные содержатся в кэше внутри адресного пространства такого OLAP-средства.

Если исходные данные содержатся в настольной СУБД, вычисление агрегатных данных производится самим OLAP-средством. Если же источник исходных данных – серверная СУБД, многие из клиентских OLAP-средств посылают на сервер SQL-запросы и в результате получают агрегатные данные, вычисленные на сервере.

Как правило, OLAP-функциональность реализована в средствах статистической обработки данных и в некоторых электронных таблицах.

Многие средства разработки содержат библиотеки классов или компонентов, позволяющие создавать приложения, реализующие простейшую OLAP-функциональность (такие, например, как компоненты Decision Cube в Borland Delphi и Borland C++ Builder). Помимо этого многие компании предлагают элементы управления ActiveX и другие библиотеки, реализующие подобную функциональность.

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

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

Идея сохранения кэша с агрегатными данными в файле получила свое дальнейшее развитие в серверных OLAP-средствах (например, Oracle Express Server или Microsoft OLAP Services), в которых сохранение и изменение агрегатных данных, а также поддержка содержащего их хранилища осуществляются отдельным приложением или процессом, называемым OLAP-сервером. Клиентские приложения могут запрашивать подобное многомерное хранилище и в ответ получать те или иные данные. Некоторые клиентские приложения могут также создавать такие хранилища или обновлять их в соответствии с изменившимися исходными данными.

Преимущества применения серверных OLAP-средств по сравнению с клиентскими OLAP-средствами сходны с преимуществами применения серверных СУБД по сравнению с настольными: в случае применения серверных средств вычисление и хранение агрегатных данных происходят на сервере, а клиентское приложение получает лишь результаты запросов к ним, что позволяет в общем случае снизить сетевой трафик, время выполнения запросов и требования к ресурсам, потребляемым клиентским приложением.

3.5 Технические аспекты многомерного хранения данных

Многомерность в OLAP-приложениях может быть разделена на три уровня:

1. Многомерное представление данных – средства конечного пользователя, обеспечивающие многомерную визуализацию и манипулирование данными; слой многомерного представления абстрагирован от физической структуры данных и воспринимает данные как многомерные.

    Многомерная обработка – средство (язык) формулирования многомерных запросов (традиционный реляционный язык SQL здесь оказывается непригодным) и процессор, умеющий обработать и выполнить такой запрос.

    Многомерное хранение – средства физической организации данных, обеспечивающие эффективное выполнение многомерных запросов.

Первые два уровня в обязательном порядке присутствуют во всех OLAP-средствах. Третий уровень, хотя и является широко распространенным, не обязателен, так как данные для многомерного представления могут извлекаться и из обычных реляционных структур. Процессор многомерных запросов, в этом случае, транслирует многомерные запросы в SQL-запросы, которые выполняются реляционной СУБД.

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

Тем не менее, использование агрегированных данных чревато недостатками. Основными недостатками являются увеличение объема хранимой информации (при добавлении новых измерений объем данных, составляющих куб, растет экспоненциально) и времени на их загрузку. Причем объем информации может увеличиваться в десятки и даже в сотни раз. Например, в одном из опубликованных стандартных тестов полный подсчет агрегатов для 10 Мб исходных данных потребовал 2,4 Гб, т. е. данные выросли в 240 раз!

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

Как исходные, так и агрегатные данные могут храниться либо в

реляционных, либо в многомерных структурах. В связи с этим в настоящее время применяются три способа хранения многомерных данных:

MOLAP (Multidimensional OLAP) – исходные и агрегатные данные хранятся в многомерной базе данных. Хранение данных в многомерных структурах позволяет манипулировать данными как многомерным массивом, благодаря чему скорость вычисления агрегатных значений одинакова для любого из измерений. Однако в этом случае многомерная база данных оказывается избыточной, так как многомерные данные полностью содержат исходные реляционные данные.

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

ROLAP (Relational OLAP) – исходные данные остаются в той же реляционной базе данных, где они изначально и находились. Агрегатные же данные помещают в специально созданные для их хранения служебные таблицы в той же базе данных.

HOLAP (Hybrid OLAP) – исходные данные остаются в той же реляционной базе данных, где они изначально находились, а агрегатные данные хранятся в многомерной базе данных.

Некоторые OLAP-средства поддерживают хранение данных только в реляционных структурах, некоторые – только в многомерных. Однако большинство современных серверных OLAP-средств поддерживают все три способа хранения данных. Выбор способа хранения зависит от объема и структуры исходных данных, требований к скорости выполнения запросов и частоты обновления OLAP-кубов.

3.6 Интеллектуальный анализ данных (Data Mining )

Термин Data Mining обозначает процесс поиска корреляций, тенденций и взаимосвязей посредством различных математических и статистических алгоритмов: кластеризации, регрессионного и корреляционного анализа и т. д. для систем поддержки принятия решений. При этом накопленные сведения автоматически обобщаются до информации, которая может быть охарактеризована как знания.

В основу современной технологии Data Mining положена концепция шаблонов, отражающих закономерности, свойственные подвыборкам данных и составляющие так называемые скрытые знания.

Поиск шаблонов производится методами, не использующими никаких априорных предположений об этих подвыборках. Важной особенностью Data Mining является нестандартность и неочевидность разыскиваемых шаблонов. Иными словами, средства Data Mining отличаются от инструментов статистической обработки данных и средств OLAP тем, что вместо проверки заранее предполагаемых пользователями взаимосвязей

между данными, они на основании имеющихся данных способны самостоятельно находить такие взаимосвязи, а также строить гипотезы об их характере.

В общем случае процесс интеллектуального анализа данных (Data Mining) состоит из трёх стадий

    выявление закономерностей (свободный поиск);

    использование выявленных закономерностей для предсказания неизвестных значений (прогностическое моделирование);

    анализ исключений, предназначенный для выявления и толкования аномалий в найденных закономерностях.

Иногда в явном виде выделяют промежуточную стадию проверки достоверности найденных закономерностей между их нахождением и использованием (стадия валидации).

Выделяют пять стандартных типов закономерностей, выявляемых методами Data Mining:

1.Ассоциация позволяет выделить устойчивые группы объектов, между которыми существуют неявно заданные связи. Частота появления отдельного предмета или группы предметов, выраженная в процентах, называется распространенностью. Низкий уровень распространенности (менее одной тысячной процента) говорит о том, что такая ассоциация не существенна. Ассоциации записываются в виде правил: A => B , где А - посылка, В - следствие. Для определения важности каждого полученного ассоциативного правила необходимо вычислить величину, которую называют доверительность А к В (или взаимосвязь А и В). Доверительность показывает, как часто при появлении А появляется В. Например, если д(A/B) =20%, то это значит, что при покупке товара А в каждом пятом случае приобретается и товар В.

Типичным примером применения ассоциации является анализ структуры покупок. Например, при проведении исследования в супермаркете можно установить, что 65 % купивших картофельные чипсы берут также и «кока-колу», а при наличии скидки за такой комплект «колу» приобретают в 85 % случаев. Подобные результаты представляют ценность при формировании маркетинговых стратегий.

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

3.Классификация - инструмент обобщения. Она позволяет перейти от рассмотрения единичных объектов к обобщенным понятиям, которые характеризуют некоторые совокупности объектов и являются достаточными для распознавания объектов, принадлежащих этим совокупностям (классам). Суть процесса формирования понятий заключается в нахождении закономерностей, свойственных классам. Для описания объектов используются множества различных признаков (атрибутов). Проблема формирования понятий по признаковым описаниям была сформулирована М.М. Бонгартом. Ее решение базируется на применении двух основных процедур: обучения и проверки. В процедурах обучения строится классифицирующее правило на основе обработки обучающего множества объектов. Процедура проверки (экзамена) состоит в использовании полученного классифицирующего правила для распознавания объектов из новой (экзаменационной) выборки. Если результаты проверки признаны удовлетворительными, то процесс обучения заканчивается, в противном случае классифицирующее правило уточняется в процессе повторного обучения.

4.Кластеризация – это распределение информации (записей) из БД по группам (кластерам) или сегментам с одновременным определением этих групп. В отличие от классификации здесь для проведения анализа не требуется предварительного задания классов.

5.Прогнозирование временных рядов является инструментом для определения тенденций изменения атрибутов рассматриваемых объектов с течением времени. Анализ поведения временных рядов позволяет прогнозировать значения исследуемых характеристик.

Для решения таких задач используются различные методы и алгоритмы Data Mining. Ввиду того, что Data Mining развивалась и развивается на стыке таких дисциплин, как статистика, теория информации, машинное обучение, теория баз данных, вполне закономерно, что большинство алгоритмов и методов Data Mining были разработаны на основе различных методов из этих дисциплин.

Из многообразия существующих методов исследования данных можно выделить следующие:

    регрессионный, дисперсионный и корреляционный анализ (реализован в большинстве современных статистических пакетов, в частности, в продуктах компаний SAS Institute, StatSoft и др.);

    методы анализа в конкретной предметной области, базирующиеся на эмпирических моделях (часто применяются, например, в недорогих средствах финансового анализа);

    нейросетевые алгоритмы – метод имитации процессов и явлений, позволяющий воспроизводить сложные зависимости. Метод основан на использовании упрощенной модели биологического мозга и заключается в том, что исходные параметры рассматриваются как сигналы, преобразующиеся в соответствии с имеющимися связями между «нейронами», а в качестве ответа, являющегося результатом анализа, рассматривается отклик всей сети на исходные данные. Связи в этом случае создаются с помощью так называемого обучения сети посредством выборки большого объема, содержащей как исходные данные, так и правильные ответы. Нейронные сети широко применяются для решения задач классификации;

    нечеткая логика применяется для обработки данных с размытыми значениями истинности, которые могут быть представлены разнообразными лингвистическими переменными. Нечеткое представление знаний широко применяется для решения задач классификации и прогнозирования, например, в системе XpertRule Miner (Attar Software Ltd., Великобритания), а также в AIS, NeuFuz и др;

    индуктивные выводы позволяют получить обобщения фактов, хранящихся в БД. В процессе индуктивного обучения может участвовать специалист, поставляющий гипотезы. Такой способ называют обучением с учителем. Поиск правил обобщения может осуществляться без учителя путем автоматической генерации гипотез. В современных программных средствах, как правило, сочетаются оба способа, а для проверки гипотез используются статистические методы. Примером системы с применением индуктивных выводов является XpertRule Miner, разработанная фирмой Attar Software Ltd. (Великобритания);

    рассуждения на основе аналогичных случаев (метод «ближайшего соседа») (Case-based reasoning – CBR) основаны на поиске в БД ситуаций, описания которых сходны по ряду признаков с заданной ситуацией. Принцип аналогии позволяет предполагать, что результаты похожих ситуаций также будут близки между собой. Недостаток этого подхода заключается в том, что здесь не создается каких-либо моделей или правил, обобщающих предыдущий опыт. Кроме того, надежность выводимых результатов зависит от полноты описания ситуаций, как и в процессах индуктивного вывода. Примерами систем, использующих CBR, являются: KATE Tools (Acknosoft, Франция), Pattern Recognition Workbench (Unica, США);

    деревья решений – метод структурирования задачи в виде древовидного графа, вершины которого соответствуют продукционным правилам, позволяющим классифицировать данные или осуществлять анализ последствий решений. Этот метод дает наглядное представление о системе классифицирующих правил, если их не очень много. Простые задачи решаются с помощью этого метода гораздо быстрее, чем с использованием нейронных сетей. Для сложных проблем и для некоторых типов данных деревья решений могут оказаться неприемлемыми. Кроме того, для этого метода характерна проблема значимости. Одним из последствий иерархической кластеризации данных является отсутствие большого числа обучающих примеров для многих частных случаев, в связи с чем классификацию нельзя считать надежной. Методы деревьев решений реализованы во многих программных средствах, а именно: С5.0 (RuleQuest, Австралия), Clementine (Integral Solutions, Великобритания), SIPINA (University of Lyon, Франция), IDIS (Information Discovery, США);

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

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

3.7 Интеграция OLAP и Data Mining

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

В настоящее время появляется составной термин «OLAP Data Mining» (многомерный интеллектуальный анализ) для обозначения такого объединения.

Существует три основных способа формирования «OLAP Data Mining»:

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

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

    «Cubing while mining». Этот гибкий способ интеграции позволяет автоматически активизировать однотипные механизмы интеллектуальной обработки над результатом каждого шага многомерного анализа (перехода) между уровнями обобщения, извлечения нового фрагмента гиперкуба и т. д.).

    11 класса [Текст... им как часть всей системы ... доцент ... Чебоксары , 2009. № 10. С. 44 -49 ... . Авторы-составители : Н. ... конспекты лекций , ...

  • Учебно-методическое пособие

    ... лекций . Подготовка лекции по математике. Написание конспекта лекции лекции . Использование информационных технологий ...

  • И к кондаурова с в лебедева научно-исследовательская деятельность будущего учителя математики творческие задания по элементарной математике и методике её преподавания

    Учебно-методическое пособие

    ... лекций . Подготовка лекции по математике. Написание конспекта лекции . Подготовка наглядных пособий. Методика чтения лекции . Использование информационных технологий ...

  • М ОНИТОРИНГ СМИ Модернизация профессионального образования Март - август 2011г

    Краткое содержание

    ... 11 .08.2011 "Мертвые души-2" В РНИМУ им ... 3,11 -3,44 . ... публичные лекции руководителей... Чебоксарах ... и строчащая конспекты аудитория - ... информационные системы и технологии . ... системой образования, - говорит доцент ... составителей ... части повышения реального содержания ...

OLAP (Online Analytical Processing – оперативная аналитическая обработка) – это информационный процесс, который дает возможность пользователю запрашивать систему, проводить анализ и т.д. в оперативном режиме (онлайн). Результаты генерируются в течении секунд.

OLAP системы выполнены для конечных пользователей, в то время как OLTP системы делаются для профессиональных пользователей ИС. В OLAP предусмотрены такие действия, как генерация запросов, запросы нерегламентированных отчетов, проведение статистического анализа и построение мультимедийных приложений.

Для обеспечения OLAP необходимо работать с хранилищем данных (или многомерным хранилищем), а также с набором инструментальных средств, обычно с многомерными способностями. Этими средствами могут быть инструментарий запросов, электронные таблицы, средства добычи данных (Data Mining), средства визуализации данных и др.

В основе концепции OLAP лежит принцип многомерного представления данных. Э. Кодд рассмотрел недостатки реляционной модели, в первую очередь указав на невозможность объединять, просматривать и анализировать данные с точки зрения множественности измерений, то есть самым понятным для корпоративных аналитиков способом, и определил общие требования к системам OLAP, расширяющим функциональность реляционных СУБД и включающим многомерный анализ как одну из своих характеристик.

12 правил, которым должен удовлетворять программный продукт класса OLAP. Эти правила:

1. Многомерное концептуальное представление данных.

2. Прозрачность.

3. Доступность.

4. Устойчивая производительность.

5. Клиент – серверная архитектура.

6. Равноправие измерений.

7. Динамическая обработка разреженных матриц.

8. Поддержка многопользовательского режима.

9. Неограниченная поддержка кроссмерных операций.

10. Интуитивное манипулирование данными.

11. Гибкий механизм генерации отчетов.

12. Неограниченное количество измерений и уровней агрегации.

Набор этих требований, послуживший фактическим определением OLAP, следует рассматривать как рекомендательный, а конкретные продукт оценивать по степени приближения к идеально полному соответствию всем требованиям.


Интеллектуальный анализ данных (Data Mining) и знаний (Knowledge Мining). Управление и анализ больших объемов данных (Big data). Системы бизнес-аналитики (Business Intelligence, BI).

Интеллектуальный анализ данных (ИАД) – общий термин для обозначения анализа данных с активным использованием математических методов и алгоритмов (методы оптимизации, генетические алгоритмы, распознавание образов, статистические методы, Data Mining и т.д.), использующих результаты применения методов визуального представления данных.

В общем случае процесс ИАД состоит из трех стадий:

1) выявление закономерностей (свободный поиск);

2) использование выявленных закономерностей для предсказания неизвестных значений (прогнозирование);

3) анализ исключений для выявления и толкования аномалий в найденных закономерностях.

Иногда выделяют промежуточную стадию проверки достоверности найденных закономерностей (стадия валидации) между их нахождением и использованием.

Все методы ИАД по принципу работы с исходными данными подразделяются на две группы:

Методы рассуждений на основе анализа прецедентов – исходные данные могут храниться в явном детализированном виде и непосредственно использоваться для прогнозирования и/или анализа исключений. Недостатком этой группы методов является сложность их использования на больших объемах данных.

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

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

Рынок Business Intelligence состоит из 5 секторов:

1. OLAP-продукты;

2. Инструменты добычи данных;

3. Средства построения Хранилищ и Витрин данных (Data Warehousing);

4. Управленческие информационные системы и приложения;

5. Инструменты конечного пользователя для выполнения запросов и построения отчетов.

В настоящее время среди лидеров корпоративных BI-платформ можно выделить MicroStrategy, Business Objects, Cognos, Hyperion Solutions, Microsoft, Oracle, SAP, SAS Institute и другие (в приложении Б приведен сравнительный анализ некоторых функциональных возможностей BI-систем).

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

OLAP - это класс программного обеспечения, обеспечивающий пользователю возможность в режиме реального времени получать ответы на произвольные аналитические запросы.

OLAP предоставляет аналитику гибкие механизмы манипулирования данными и их визуального отображения, с помощью которых он имеет возможность сопоставить различные показатели бизнеса между собой, выявить скрытые взаимосвязи. Фактически, с точки зрения ЛИР, OLAP является удобной графической оболочкой для навигации, визуализации и анализа в различных разрезах огромного количества взаимосвязанной информации о деятельности организации, поступающей из ИС организации.

В основе OLAP лежит понятие многомерного куба данных, в ячейках которого хранятся анализируемые (числовые) данные, например, объемы продаж в штуках или в денежном выражении, остатки на складе, издержки и т.п. Эти числовые данные называются мерами или фактами (measures, facts). Осями многомерной системы координат служат основные атрибуты анализируемого бизнес-процесса, которые называются измерениями (dimensions). Примерами измерений могут быть товар, регион, тип покупателя, время.

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

Рис. 3.4.

Кроме того, что куб может содержать неограниченное количество измерений, может усложняться содержимое ячейки - у куба может быть несколько фактов, например, не только количество проданных товаров, но их стоимость, остаток на складе. В этом случае в ячейке будет отображаться несколько значений.

Если трехмерный куб можно представить графически, то куб с количеством измерений более трех визуализировать уже невозможно. Поэтому в реальности для анализа используют срезы куба. - это результат выборки данных куба по выбранным пользователем значениям измерений, которые называются метками (members). Например, аналитик хочет сравнить продажи трех групп товаров в Москве и Санкт-Петербурге за январь и февраль. В этом случае он должен расположить значения измерения «Товар» по строкам, значения измерений «Город» и «Время» - по столбцам и выбрать в измерениях интересующие его позиции. Срез куба будет иметь вид, представленный на рис. 3.5.


Рис. 3.5.

Возможен вариант, когда аналитику нужно получить данные, соответствующие одному значению измерения или по всем значениям измерения в целом. В этом случае такое измерение называют фиксированным, оно не располагается по строкам или столбцам, а выступает в качестве параметра отчета (рис. 3.6).


Рис. 3.6.

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

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

  • поворот - транспонирование, в результате которого меняются местами строки и столбцы таблицы;
  • проекция - агрегирование значений в ячейках, лежащих на оси проекции, по определенному закону (суммирование, нахождение среднего, определение количества непустых ячеек и др.);
  • раскрытие, или детализация (drill-down), - замена одного из значений измерения совокупностью значений из следующего уровня иерархии измерения;
  • свертка, или консолидация (roll-up/drill-up), - операция, обратная раскрытию;
  • сечение (slice-and-dice) - получение «среза» данных путем задания параметров их выборки из куба.

В общем случае алгоритм работы OLAP включает в себя выполнение следующих действий:

  • получение данных в виде плоской таблицы или результата выполнения SQL-запроса;
  • сохранение данных в оперативной памяти и преобразование их к многомерному кубу;
  • отображение построенного куба с помощью кросс-таблицы или диаграммы. В общем случае к одному кубу может быть подключено произвольное количество отображений.

Впервые определение OLAP-технологии было дано Е. Коддом в 1993 г . Коддом были описаны возможности многомерного анализа и сформулированы 12 правил OLAP, к которым чуть позже (в 1995 г.) были добавлены еще несколько. Рассмотрим их подробнее.

  • 1. Многомерное концептуальное представление данных (Multi- Dimensional Conceptual View). В продукте OLAP используется многомерная модель представления данных, при которой категориальные атрибуты данных рассматриваются как измерения, а количественные - как факты.
  • 2. Прозрачность (Transparency). От пользователя должно быть скрыто, как реализована многомерная модель, какие конкретные средства используются для хранения и обработки данных, как данные организованы и откуда берутся.
  • 3. Доступность (Accessibility). Инструментарий OLAP должен обеспечивать пользователю доступ к данным независимо от их места и способа хранения. При этом должна поддерживаться единая, согласованная и целостная модель данных.
  • 4. Устойчивая производительность (Consistent Reporting Performance). Должна быть обеспечена высокая производительность OLAP независимо от количества измерений многомерной модели и размеров базы данных.
  • 5. Клиент-серверная архитектура (Client-Server Architecture). Для обеспечения оперативной аналитической обработки распределенных данных OLAP-продукт должен работать на основе клиент-серверной архитектуры. Для обобщения и консолидации данных из различных физически разделенных корпоративных баз данных инструмент должен поддерживать построение общей концептуальной схемы данных.
  • 6. Равноправие измерений (Generic Dimensionality). Для всех измерений в многомерном кубе должен быть доступен одинаковый набор функций. При необходимости любому измерению могут быть добавлены дополнительные характеристики. Базовая структура данных, формулы расчета и форматы отчетов не должны быть привязаны к какому-то одному измерению.
  • 7. Динамическая обработка разреженных матриц (Dynamic Sparse Matrix Handling). Поскольку кросс-таблицы, формируемые инструментом OLAP, часто бывают разреженными, должна обеспечиваться их оптимальная обработка. Инструмент должен обеспечивать высокую скорость обработки вне зависимости от расположения ячеек данных, от количества измерений в кубе и разреженности данных.
  • 8. Поддержка многопользовательского режима (Multi-User Support). Инструмент OLAP должен позволять работать с одними и теми же данными одновременно нескольким пользователям и обеспечивать при этом целостность и защиту данных.
  • 9. Неограниченная поддержка кроссмерных операций (Unrestricted Crossdimensional Operations). При выполнении манипуляций данными (операций среза, поворота, консолидации, детализации) должно обеспечиваться сохранение функциональных отношений между ячейками многомерного куба, описанных с помощью формул. Преобразования установленных отношений должны выполняться системой самостоятельно, без необходимости их переопределения пользователем.
  • 10. Интуитивное манипулирование данными (Intuitive Data Manipulation). Пользовательский интерфейс для выполнения манипуляций данными должен быть максимально удобным, естественным и комфортным.

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

12. Неограниченное количество измерений и уровней агрегации (Unlimited Dimensions and Aggregation Levels). OLAP-инструмент должен поддерживать аналитическую модель данных, в которой может содержаться до 20 измерений. При этом инструмент должен позволять пользователю определять для каждого измерения неограниченное количество уровней агрегации по любому направлению консолидации.

Для определения OLAP как аналитического инструмента в качестве универсального критерия используется тест FASMI (Fast Analysis of Shared Multidimensional Information - быстрый анализ разделяемой многомерной информации). Рассмотрим детально каждую из составляющих этой аббревиатуры.

Fast (быстрый). Запросы пользователей должны обрабатываться OLAP- системой с высокой скоростью, при этом среднее время обработки запроса не должно превышать 5 с, большинство запросов должно обрабатываться в пределах 1 с, самые сложные запросы, требующие больших вычислений, должны обрабатываться не более 20 с.

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

Shared (разделяемый доступ). OLAP-инструмент должен обеспечивать работу в многопользовательском режиме.

Multidimensional (многомерный). OLAP-приложение должно обеспечивать многомерное представление данных с поддержкой иерархических измерений.

Information (информация). OLAP-инструмент должен предоставлять доступ пользователю к информации независимо от того, в каком электронном хранилище данных она находится.

В зависимости от ответа на вопрос, существует ли многомерный куб как отдельная физическая структура или лишь как виртуальная модель данных, различают системы MOLAP (Multidimensional OLAP) и ROLAP (Relational OLAP). В MOLAP реализуется многомерное представление данных на физическом уровне в виде многомерных кубов. Системы ROLAP используют классическую реляционную модель, характерную для OLTP-систем. При этом данные хранятся в реляционных таблицах, но специальные структуры эмулируют их многомерное представление. Также выделяют гибридные OLAP (HOLAP - Hybrid OLAP), в которых детализированные данные хранятся в реляционных таблицах, а агрегированные данные - в многомерных кубах. Такая комбинация реляционной и многомерной моделей позволяет сочетать высокую производительность, характерную для многомерной модели, и возможность хранить сколь угодно большие массивы данных, присущую реляционной модели.

  • Codd Е. Providing OLAP to User-Analysts: An IT Mandate // Computerworld. 1993. T. 27.№30.