Что такое OLAP-куб и принцип его настройки

OLAP-куб – это инструмент, который напоминает сводную таблицу в Excel.

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


Всё начинается с того, что нужно вытащить числа по каким-то критериям.

Какие есть числа про проект? – Реквизиты-числа в объектах (задачах, например) и в справочниках.

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

Возьмём такую исходную таблицу (в терминологии ADVANTA – справочник):
ФруктКоличество
Яблоко2
Груша3
Апельсин1
Яблоко2
Груша4
Апельсин1
Яблоко7
Груша4
Апельсин2
Первый этап преобразования – создать показатель-запрос, агрегировать (суммировать) данные по признаку:
ФруктКоличество
Яблоко11
Груша11
Апельсин4

Усложним задачу. Предположим, что есть два разных проекта – проект Маши и проект Васи.
ПроектФруктКоличество
МашиЯблоко2
ВасиГруша3
МашиАпельсин1
ВасиЯблоко2
МашиГруша4
ВасиАпельсин1
МашиЯблоко7
ВасиГруша4
МашиАпельсин2
Когда этот куб выстроится в виде OLAP-отчёта, получится:
ПроектФруктКоличество
МашиЯблоко9
Груша4
Апельсин3
ВасиЯблоко2
Груша7
Апельсин1

Теперь представим, что измерений стало еще больше. Добавили критерий свежести.
ПроектФруктСвежийКоличество
МашиЯблокода2
ВасиГрушада3
МашиАпельсиннет1
ВасиЯблокода2
МашиГрушада4
ВасиАпельсиннет1
МашиЯблокода7
ВасиГрушада4
МашиАпельсиннет2
МашиЯблокода2
ВасиГрушада3
МашиАпельсиннет1
ВасиЯблокода2
МашиГрушада4
ВасиАпельсинда1
МашиЯблоконет7
ВасиГрушада4
МашиАпельсинда2
Но в OLAP-отчёте (или сводной таблице) просто появился еще один маркер «Свежесть»:
ПроектФруктСвежий?Количество
ВасиАпельсинда1
нет1
Грушада14
Яблокода4
МашиАпельсинда2
нет4
Грушада8
Яблокода11
нет7
А можно показатели поменять местами…
Свежий?ФруктПроектКоличество
даАпельсинВаси1
Маши2
ГрушаВаси14
Маши8
ЯблокоВаси4
Маши11
нетАпельсинВаси1
Маши4
ЯблокоМаши7

И так далее. Можно добавлять всё новые и новые измерения, по которым будет проводиться расчёт.
Измерений может быть не 2, как в обычной таблице, а не ограниченное количество:

  • «Какой фрукт», «Свежий?» и «Чей проект» – это измерения OLAP-куба;
  • то, что содержится в ячейках – результат вычислений по правилам из показателя.
    В примере выше самый простой вариант – показатель-запрос с агрегированием… причём, судя по контексту, скорее всего, из справочника.
    Этот же показатель-запрос – основа для всех последующих сложных вычислений.

Подробно о том, как создать новый OLAP-куб.

OLAP-куб в ADVANTA – это заготовка вычислений.

Чтобы увидеть результат, нужно на основе созданного OLAP-куба создать OLAP-отчёт. И/или использовать этот OLAP-куб как источник для дальнейших вычислений.