OLAP-системы

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

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

- специальные — обработка ненормализованных данных, хранение результатов отдельно от исходных данных, выделение отсутствующих данных, обработка отсутствующих значений;

- построение отчетов — гибкое, стабильная производительность, автоматическое регулирование физического уровня;

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

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

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

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

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

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

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

Выделяют три разновидности хранения данных:

- многомерная OLAP (multidimensional OLAP — MOLAP) — технология, основанная на хранении данных под управлением специализированных многомерных СУБД;

- реляционная OLAP (relational OLAP — ROLAP) — технология на основе одной или нескольких схем типа «звезда» или «снежинка», базирующаяся на хранении многомерной информации в реляционных базах данных;

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

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

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