Feed on Posts or Comments

BI EE &OLAP Андрей Пивоваров on 05 May 2009 03:01 pm

На OTN появился BI EE плагин для AWM

Хорошая новость, на OTN выложили плагин для Analytic Workspace Manager 11.1.0.7, который позволяет создавать в репозитории BI EE правильное описание связки с OLAP кубами.

Что он делает и почему важен?

Те, кто читал мое описание OLAP 11g знают, что для извлечения данных из OLAP опции в Oracle Database используется SQL, работающий над CUBE_TABLE.

В результате, если мы делаем запрос к кубу, у нас получится примерно такая картинка:

SELECT time,
  product,
  customer,
  channel,
  sales
FROM units_cube_view
WHERE rownum < 15;

TIME      PRODUCT CUSTOMER CHANNEL      SALES
--------- ------- -------- ------- ----------
TOTAL     TOTAL   TOTAL    TOTAL      4000968
CY1999    TOTAL   TOTAL    TOTAL       330425
CY2003    TOTAL   TOTAL    TOTAL       534069
CY1998    TOTAL   TOTAL    TOTAL       253816
CY2005    TOTAL   TOTAL    TOTAL       565718
CY2006    TOTAL   TOTAL    TOTAL       584929
CY2004    TOTAL   TOTAL    TOTAL       587419
CY2000    TOTAL   TOTAL    TOTAL       364233
CY2002    TOTAL   TOTAL    TOTAL       364965
CY2001    TOTAL   TOTAL    TOTAL       415394
CY2000.Q1 TOTAL   TOTAL    TOTAL        88484
CY2001.Q2 TOTAL   TOTAL    TOTAL        97346
CY2001.Q3 TOTAL   TOTAL    TOTAL       105704
CY2005.Q3 TOTAL   TOTAL    TOTAL       138953

Дальше цитата из моей статьи:

И вот тут видно основное отличие данных, которые достаются из OLAP от данных, которые берутся из обычных таблиц Oracle. Обратите внимание на первую строчку, где четыре слова \’TOTAL\’. В этой строке – агрегат (сумма) по продажам по всем измерениям. Если бы мы хотели достать сумму по всем измерениям из обычной таблицы, нам нужно было написать что-то вроде

select sum(sales) from units_fact

А OLAP уже выдает все возможные агрегаты, поэтому вместо суммирования, нам нужно в условиях SQL запроса WHERE описать фильтр этой строки. Само суммирование делать не надо. Сумму уже посчитал OLAP сервер.

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

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

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

Новый плагин, как раз и делает простую вещь – он по описанию куба в AWM генерирует скрипт на внутреннем языке репозитория BI – UDML и в этом скрипте содержится правильное описание кубов, связей между таблицами измерений, структуры иерархий и правил извлечения данных из CUBE_TABLE и т.д.

Я попробовал поставить этот плагин и все работает примерно так, как показано в этом видеоролике. И работает очень быстро.

Хорошо еще тут то, что BI EE теперь стало очень просто использовать в качестве смотрелки для Oracle OLAP. До этого это тоже можно было сделать, но мало кто мог сам все правильно прописать в репозитории. Сейчас прописать в BI EE куб, сделанный в AWM можно за несколько минут.

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

AWM и плагин можно скачать тут.

__________________________________
Читайте также:
А еще можно почитать мой твиттер @apivovarov

4 Responses to “На OTN появился BI EE плагин для AWM”

  1. on 30 Jun 2009 at 11:27 am 1.Олег said …

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

  2. on 01 Jul 2009 at 11:23 am 2.Андрей Пивоваров said …

    Олег, мне почему-то кажется, что это ограничение BI EE, а не плагина.

  3. on 02 Jul 2009 at 9:33 am 3.Олег said …

    Почему же, OBI прекрасно поддерживает несколько иерархий. Кроме того, интересно сравнить примеры построения метаданных репозитория для OLAP 10й версии и для 11й (Oracle by example). Подход, который использовали для 10ки, позволяет (как мне кажется) прописывать несколько иерархий, но там очень много “ручной” работы.

  4. on 27 Aug 2010 at 3:57 pm 4.Сергей said …

    Тут требования и ограничения для плагина
    http://www.oracle.com/technetwork/database/options/olap/awm-plugin-biee-099449.html

    Описание:
    Requirements

    The following requirements must be met in order to use this plug-in:

    * The default hierarchy of each dimension must be a level based hierarchy.
    * Each dimension must include the long description attribute.
    * The ‘Create level attribute columns in views’ option must be selected for the long description attribute of each dimension. (This can be set on the General tab of the attribute.)
    * Cubes must have at least one measure.

    Limitations

    This release has the following limitations:

    * Only the default hierarchy in a dimension is exported to the OBIEE repository.

    Откуда следует, что только default иерархия экспортируется в BI EE

Trackback This Post | Subscribe to the comments through RSS Feed

Leave a Reply