Функциональность

OLAP-системы

Идея обработки многомерных данных восходит к 1962 году, когда К. Айверсон опубликовал свою работу "Язык программирования" (A Programming Language, APL) [47]. APL - это математически определенный язык с многомерными переменными и изящными, но довольно абстрактными операторами. В 70-е и 80-е годы он активно использовался во многих деловых приложениях, функционально схожих с современными OLAP-системами.

В 1993 году вышла в свет статья Е. Ф. Кодда, в которой впервые было дано формальное определение OLAP-технологии [48]. Эта работа получила большой резонанс и привлекла внимание к возможностям многомерного анализа. В статье были описаны двенадцать правил OLAP, к которым чуть позже (в 1995 году) были добавлены еще несколько. Все эти правила были разделены на четыре группы и названы "характеристиками" (features).

К правилам OLAP относятся:

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

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

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

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

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

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

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

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

  • многомерный OLAP (multidimensional OLAP, MOLAP) - "OLAP в чистом виде", т.е. технология, основанная на хранении данных под управлением специализированных многомерных СУБД;
  • реляционный OLAP (relational OLAP, ROLAP) - технология, основанная на хранении многомерной информации в реляционных базах данных, на основе одной или нескольких схем типа "звезда" или "снежинка";
  • гибридный OLAP (hybrid OLAP, HOLAP) - технология, при которой одна часть данных хранится в многомерной базе, а другая часть - в реляционной. При этом инструментальные средства, поддерживающие эту технологию, обеспечивают прозрачность данных для пользователя, который на логическом уровне всегда работает с многомерными данными.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: