Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный...

98
<Insert Picture Here> Oracle Essbase Сахаров Андрей вед. консультант Oracle CIS

Transcript of Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный...

Page 1: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

<Insert Picture Here>

Oracle EssbaseСахаров Андрейвед. консультант Oracle CIS

Page 2: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Oracle OLAP

Oracle Data Mining

Oracle Partitioning

Oracle Warehouse Builder

ХРАНИЛИЩА И ВИТРИНЫ ДАННЫХ

ИНСТРУМЕНТЫ БИЗНЕС-АНАЛИЗА и ОТЧЁТНОСТИ

Oracle Data Integrator

ORACLE ORACLE ESSBASEESSBASE

ORACLE DATABASE

Oracle Exadata Server

АППАРАТНО-ПРОГРАММНАЯ ПЛАТФОРМА РЕАЛИЗАЦИИ ОЧЕНЬ БОЛЬШИХ БД

Oracle BI Suite EE Oracle RTD

Аналитическая платформа Oracle

Oracle BI Suite EE

Page 3: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Essbase

• Универсальный OLAP-сервер для хранения, обработки и представления информации

• Может использоваться • дополнительно к хранилищу• независимо от хранилища

• Загрузка данных из хранилища данных и / или непосредственно из бизнес приложений

• Реализован на основных 32 и 64 битных аппаратных платформах

Page 4: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Развитые возможности для динамического анализа данных• Детализация, • Вращение, • Выборка, • Сравнение, • Ранжирование, • Сортировка, • Фильтрация, • Группировка, • Вычисления, • Аннотация, • Изменение (“write back”), • ……..

Page 5: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Развитые вычислительные возможности

• Широкая функциональность: • От простого агрегирования до сложных многомерных

распределений• Результаты могут храниться или вычисляться «на лету»

• Поддержка иерархических взаимосвязей• Любые виды несбалансированных иерархий• Любое количество альтернативных иерархий

• Более 350 встроенных функций• Простой синтаксис, расширяемость

Page 6: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

АрхитектураУровень баз данныхПромежуточный уровеньКлиентский уровень

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

Интеграционныесервисы

MaxL, MDXC API, VB API, Java

API

Административная консоль

Интеграционная консоль

TCP/IP

HTTP

TCP/IP

Essbase

RDBMSODBC

ОбслуживающиесервисыHTTP

Essbase Spreadsheet Add-inSmart View for Office

Block Storage

AggregateStorage

TCP/IP

XOLAP eXtending OLAP on RDBMS

Page 7: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Block Storage Database• Исходный механизм хранения в Essbase• Для приложений, связанных с итеративным планированием,

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

любой уровень агрегации• Управление порядком вычисления измерений• Вычисление всей или части БД• Выполнение сложных вычислений

Данные на нижем уровне

Вычисленная БД

Вычислительные процедуры

Page 8: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Агрегированные данные

ОтчётДанные на нижем уровне

Aggregate Storage Database• Реализован в 2005 г.• Для крупномасштабных, разреженных данных с большим числом

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

Page 9: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

eXtending OLAP on Relational Database - XOLAP

• Кубы динамически подгружаемые из RDBMS• Конструирование приложений (многомерная

модель на основе таблиц/колонок БД) в Essbase Studio

• Отчётность и анализ через OLAP инструментарий:• Smart View for Microsoft Office• BI+: Web Analysis / Financial Reports / Answers• Oracle Essbase Visual Explorer

RDBMSSQL

Page 10: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Компоненты Essbase

• Essbase:• Essbase database • Essbase Server• Administration Services• Smart View• MaxL, ESSCMD, MDX• C API, VB API, and Java API

• Дополнительные компоненты:• Integration Services• Essbase Studio

Page 11: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Administration Services Console

• Интерфейс для администрирования базы данных и системы

Навигационная панель

Окно объектов

Окно сообщений

Page 12: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Компоненты Среды Реализации

• Объекты базы данных• Outline (.OTL)• Rules files (.RUL)• Calculation scripts (.CSC)

• Аналитические интерфейсы• Smart View• Spreadsheet Add-in

• Integration Services• Essbase Studio

Page 13: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Outlines• Редактирование древовидных структур для иерархий

измерений• Редактирование правил консолидации и математических

отношений между элементами измерений

Page 14: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Rules Files• Отображений источников данных в целевые базы данных

Oracle Essbase• Загрузка данных и иерархий измерений

Поля отображаемые в Измерения

Игнорируемые поля

Page 15: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Calculation Scripts

• Вычисляют всю или часть базы данных• Управляют порядком вычисления Измерений• Совершают сложные вычисления

данные “Level 0”

Результирующая база данных

“Calculation script”

Page 16: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Smart View

• Устанавливаемый через Web тонкий клиент, который встраивается в Microsoft Office приложение

• Позволяет редактировать (Excel) и просматривать данные, создавать произвольные отчёты

Excel, Word и PowerPoint с Smart

ViewБазы Данных

Essbase

Provider Services

Java API

Infrastructure

HTTP(S) TCP/IP

Page 17: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Block Storage DatabaseBlock Storage Database

Page 18: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Проектирование Приложений и Баз Данных

• Приложения• Содержат BS базы данных и скрипты• Размещается на сервере, на котором Essbase Server

установлен

• Базы данных• Репозиторий многомерных аналитических данных• Содержат объекты баз данных и определения

секретности

Essbase Server ApplicationApplication

Page 19: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Создание Block Storage Applications

1

2 3

Page 20: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Создание Block Storage Databases

2

1

3

Page 21: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Рекомендации

Одна База Данных на Приложение рекомендуется.• Серверные ресурсы лучше балансируются. • Если приложение становится недоступным, все базы

приложения недоступны.• Исключения:

• Приложения для задач планирования• “Currency” базы данных

Page 22: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Создание объектов в “Outline”

• Терминология:• “Generations” • “Levels”

Generation 3

Generation 2

Generation 1

Level 0 (Leaf node)

Level 1

Level 2 или Level 1

Ancestors of• Act vs Bud• Act vs Fcst• Bud vs Fcst

Children of Scenario Variances

Descendants of Scenario

Page 23: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Типы Измерений «Dimension»

Нет

Счета

Время

Страны

Валюта

Атрибуты

Page 24: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Создание Измерений и Значений измерений

• «Add child» добавляет значение на один уровень ниже выбранного значения.

• «Add sibling» добавляет значение на том же уровне, что и выбранное значение.

• Если выбранное значение (элемент) является Измерением, «Add sibling» добавляет новое измерение.

Add Child Add Sibling

Page 25: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Перемещение Измерений и Значений измерений

• Перемещение родителя так же перемещает его дочерние значения.

• Вставка значения как дочернего, делает его первым дочерним значением.

• Вставка значения как равного, делает его следующим значением на уровне.

42

1 3

Вырезать и перетащить

Page 26: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Модификация Свойств Значений

• Опции Хранения• Метод Консолидации• Алиасы• Атрибуты• Пользовательские атрибуты

(UDAs)• Формулы вычисления

Формула вычисления

Свойства значения

Page 27: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Вычисление на основе правил определённых в «Outline»Два способа:• Иерархическая структура

• Операции Консолидации• Разделяемые «Shared» значения

• Формулы вычисления значений

Page 28: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

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

• Addition (+)• Subtraction (-)• Multiplication (*)• Division (/)• Percent (%)• Exclude from consolidation (~) Does not use the member in the consolidation to its parent.

• Never consolidate (^) Does not use the member

in any consolidation in any dimension.

Операторы Консолидации

Act Vs Bud = Current Year – Budget

Current Year (+)

Budget (-)

Act Vs Bud

Page 29: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Разделяемые значения «Shared Members»

• Не хранят данные• Создают индексный

указатель на хранимое значение

• Всегда являются значением уровня 0 «level 0 members»

• Размещаются после (ниже) хранимых элементов в схеме «outline»

Scenario

Act Vs Bud

Current Year

Budget

Scenario Variances

Budget

(~)

(~)

(~)

(~)

SharedCurrent Year (+)

(-) Shared

Page 30: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Формулы вычисления значений

• Определяют вычисления в схеме «outline»:

Page 31: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Порядок консолидации значений• Порядок консолидации определяется порядком значений

в схеме «outline».• Вычисления производятся в порядке сверху-вниз.

Parent

Member 4

Member 2

Member 1

Member 3

Member 7

Member 5

Member 6

(+)

(+)

(-)

(*)

(%)

(/)

(~)

10

20

25

40

50

60

70

30

5

200

400

25

40

50

60

6.67

6.67 Parent = ((((M1 + M2) – M3) * M4) % M5) / M6

Page 32: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Интеллектуальные «Intelligent» вычисления

Только блоки данных отмеченные как Изменённые пересчитываются.

Page 33: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Создание алиасов для значений

Алиасы• Используются для отчётности• Обновляются в свойствах

схемы «Member Properties»• Хранятся в таблицах алиасов

Таблицы алиасов• Создаются в свойствах схемы• Обновляются отдельно

Page 34: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Загрузка значений измерений с помощью «Rules Files»

Источник данных

Выборка «Rules files»

Essbase БД

Иерархия

Page 35: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Создание «Rules Files»Раздел ШагиПодготовка 1. Открыть источник данных.

2. Установить свойства источника.3. Ассоциировать «rule» с схемой «outline»

БД.4. Если необходимо, форматировать файл.

Действия 5. Определить метод загрузки значений.6. Определить свойства полей

Завершение 7. Проверить корректность описаний.8. Сохранить «rule».9. Выполнить «rule».

Page 36: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Выбор Измерения

12

34

Page 37: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Выбор метода построения

• «Generation»• «Level»• «Parent-child»

1

2

3

4

Page 38: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Определение свойств полей

• Измерение• Тип поля• Номер поля

2

3

1

Page 39: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Дополнительно определить правила поддержки загрузки значений измерения

• Передвигать значения• Модифицировать свойства значений• Сортировка значений• Способ обновления

Page 40: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Загрузка данных

Источник данных

«Rules files» БД Essbase

Page 41: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Источники данных требующие «Rules File»

• Загрузка из SQL БД• Одновременное построение Измерений• Изменение данных

• Шкалирование• Изменение знака• Пропуск полей

• Изменение имён (значений)• Добавление префикса или суффикса• Добавление отсутствующих измерений• Измение порядка полей

Page 42: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Определение свойств полей

• Для каждого поля определяется – метод загрузки и имя поля.

1

3

2

Page 43: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Доопределение отсутствующих измерений

• Если необходимо, доопреляется заголовок для отсутствующего измерения

2

3

Отсутствует измерение Сценарий

1

Page 44: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Установка опций загрузки

• Перезаписывать, вычитаь из, суммировать с существующими значениями

• Изменять знак

Page 45: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Вычисления в Block Storage Essbase

• Значения в БД:• Исходные данные• Вычисляемые данные

• Вычисления:• «Outline» вычисления• Вычисления на основе скриптов

ОтчётВычисленная БДИсходные

данные

Вычисления

Page 46: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Вычисления основанные на «Outline»

• Используются для простых вычислений• Основывается на определённых в схеме «outline»

отношениях или формулах• Вычисляется вся БД

Вычисленная БД

«Outline»

Задание на вычисление по

умолчанию

CALC ALL

Входные данные

Page 47: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Вычисления основанные на Скриптах

• Вычисляется вся или часть БД• Управление порядком вычисления измерений• Выполнение сложных вычислений

Вычисленная БД

Пользовательские скрипты

Входные данные

Page 48: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Редактор Сриптов

Функции и команды

Измерения и значения

Page 49: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Порядок вычислений

•CALC ALL вычисляет схему в следующем порядке:

Оптимальный порядок:

От Наибольшего к НаименьшемуОптимальный

порядок:

От Наименьшего к Наибольшему

3. Плотные «Dense» измерения (в порядке в схеме)

4. Разряженные измерения (в порядке в схеме)

5. Двух проходные «Two-pass» вычисления

1. Измерения типа «Account»

2. Измерения типа «Time»

Page 50: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Блоки данных и Индексы

Scenario->Product->Customer

Блок Scenario Product Customer1 Current Year Lightbolt 365 A IBM2 Current Year Lightbolt 365 A Acer

… … …

Индексы блоков данных

Физические данные хранятся в блоках данных

Определения опций хранения Измерений

AccountsYear

Tot

Page 51: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Ячейка данных

• Уникально адресуема• Требуется 8 байт дискового пространства

100

123

131

166

196

150

149

182

231

115

120

143

100 Units of Lightbolt 365 A hard drives sold to IBM in February of the

current year

Page 52: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Статистика БД

Page 53: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Свойства Измерений

• Конфигурация Плотное-Разряженное («Dense-sparse»)• Количество значений в Измерении• Количество фактических значений

Измерение типа Атрибуты

Page 54: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Статистика по блокам

Page 55: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Вычисления в БД

Page 56: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Структура вычислительных Скриптов

• Комментарии

/* <=---BEGIN COMMENT TAGInsert comments between begin comment and end comment tags. END COMMENT TAG---=> */

Page 57: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Служебные команды

• команды - SET определяют режимы настройки среды выполнения

Page 58: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Фиксация множеств - секции Fix

Начало внешнего (основного) блока Fix

Окончание основного блока Fix

Внутренний блок Fixes

Page 59: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Пример вычислительного блока

Page 60: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Агрегация

• Используются CALC DIM или CALC ALL команды

Page 61: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Управление вычислениями

Page 62: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Фокусировка

Страницы до начала вычислений

«Budget Retail» блоки в памяти для вычислений

FIX(Budget, @ICHILDREN(Retail))"Net Sales" = "Gross Sales"–Discounts;ENDFIX

Страницы после вычислений

Page 63: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Оператор IF

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

IF(@ISMBR(Budget) AND @ISICHILD(Retail))"Net Sales" = "Gross Sales"–Discounts;ENDIF

Страницы до начала вычислений

Страницы после вычислений

Page 64: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Синтаксис

IF в «outline» формуле IF в вычислительном скрипте

Units(IF(@ISMBR(Budget))

Units = "Prior Year" * 1.1;"List Price" = "Prior Year" * 1.25;"Discount %" = "Prior Year" * .90;

ENDIF)

Page 65: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Сравнение FIX и IF

• Результат вычислений один и тот же, но что быстрее?Units(IF(@ISMBR(Sep)) Units=@PRIOR(Units, 1);ENDIF

IF(@ISMBR(Oct)) Units=@PRIOR(Units, 2)*1.1;ENDIF)

FIX (Sep) Units=@PRIOR(Units, 1);ENDFIX

FIX (Oct) Units=@PRIOR(Units, 2)*1.1;ENDFIX

Units

Aug 100

Sep 100

Oct 110

Page 66: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Количество обрабатываемых блоков

Units(IF(@ISMBR(Sep)) Units=@PRIOR(Units, 1);ENDIF

IF(@ISMBR(Oct)) Units=@PRIOR(Units, 2)*1.1;ENDIF)

FIX (Sep) Units=@PRIOR(Units, 1);ENDFIX

FIX (Oct) Units=@PRIOR(Units, 2)*1.1;ENDFIX

IF обрабатывает все блоки

FIX для значений «dense» обрабатывает блоки с данными

Page 67: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Количество проходов

Units(IF(@ISMBR(Sep)) Units=@PRIOR(Units, 1);ENDIF

IF(@ISMBR(Oct)) Units=@PRIOR(Units, 2)*1.1;ENDIF)

FIX (Sep) Units=@PRIOR(Units, 1);ENDFIX

FIX (Oct) Units=@PRIOR(Units, 2)*1.1;ENDFIX

Один вычисляемый блок элементов требует один проход на блоках данных

Два FIX утверждения требуют два прохода на блоках данных

Page 68: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Ссылки на значения

Page 69: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Ссылки на значение

Units / Units->"Channel Total"

1

2

3

1. Block 1 Units / Block 3 Units

2. Block 2 Units / Block 3 Units

3. Block 3 Units / Block 3 Units

Unit Mix по Cust вычисления

1. Current Year->O-IBM->Family Total2. Current Year->OEM->Family Total3. Current Year->Channel Total->Family Total

Блоки данных

Page 70: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Ссылки на множество значений

Функции работы с множеством значений:• Генерируют множество значений для вычислений• Обычно используются как аргумент в FIX утверждениях и

других функциях

FIX(@ICHILDREN(OEM)) "Unit Mix by Chan" = Units / Units->OEM;ENDFIXFIX(@ICHILDREN(Retail)) "Unit Mix by Chan" = Units / Units->Retail;ENDFIXFIX(@ICHILDREN(Distributor)) "Unit Mix Chan" = Units / Units->Distributor;ENDFIX

Page 71: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Относительные ссылки

• Ссылаются на значения соотнесённые к текущему элементу:• Родитель• Дочерние на специфическом уровне «level» или генерации

«generation»

"Unit Mix by Chan" = Units / @ANCESTVAL(Customer,3,Units);

«Generation» 3 «customers»

Page 72: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Переменные

• Temporary Variables

• Substitution Variables

VAR RetDisc = 1.005FIX(@CHILDREN(Retail)) Discounts = Discounts * RetDisc;ENDFIX

FIX(@CurYear) "Cur Mo Vs Prior" = @VAR(&CurrMonth, &PriorMonth);ENDFIX

Page 73: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

• Хранят промежуточные значения• Уменьшают сложность скриптов• Улучшают производительность

Temporary Variables

VAR

Page 74: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Создание Substitution Variables

1

3

6

4 5

Page 75: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Aggregate Storage DatabaseAggregate Storage Database

Page 76: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Aggregate Storage

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

Page 77: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Ключевые характеристики

• Данные загружаются на «level» 0.• БД доступна только на чтение ( в 11.1.2 возможна

запись).• Значения основанные на формулах - MDX запросы.• Все формулы и агрегации вычисляются в момент

запроса.• Данные хранятся в Табличных Пространствах.• Измерения

• Нет ограничений на число Измерений• Максимальное количество комбинаций значений: 2^52

• Одна БД на приложение

Page 78: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Формулы вычисления Значений

"Sales" / "Net Profit";

[sales] / [net profit]

Синтаксис Формул

MDX синтаксис

Page 79: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Приложения и базы данных

Различия:• нет «Calculation scripts»• нет вторичных БД• нет БД Валют

Aggregate Storage Block Storage

Page 80: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Rules Files

• Поддерживаются для:• Файловых источников• SQL источников

Page 81: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Иерархии

• Поддерживаются:• Хранимые иерархии• Динамические иерархии• Множество иерархий для одного измерения

Page 82: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Хранимые (Stored) Иерархии

• Преимущества:• Потенциально позволяют хранить

агрегированные данные• Улучшают время выполнения

запросов

• Но:• Ограничены использованием только

Limited use of унарных операций• Ограниченное использование «Label

Only»• Поддержка только одного экземпляра

значения измерения

Dimension

Level_1_2

Level_0_3

Level_2_1

Level_1_1

Level_0_1

Level_0_2

Label Only

Label Only

Stored

+

~

Label Only

+

+

+

~

Level_0_4 +

Label Only

Page 83: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Динамические «Dynamic» Иерархии

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

измерения• «Label Only» на любом уровне• Неограниченные «shared

members»

• Но:• Значения вычисляются только по

запросу (никогда не преагрегируются)

• Потенциально ухудшают время выполнения запроса

Years

Curr Year

Prev Year

Variance

Dynamic

~

~

+

Variance % ~

[20: [Curr Year]-[Prev Year]]

[20: ([Curr Year]-[Prev Year])/[Prev Year]*100]

Label Only

Page 84: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Множественные Иерархии

Возможность сочетать хранимые и динамические иерарахии для измерения.

Time

QTD

QTD(Jan)

MTD

Jan

Label Only

Multiple Hierarchies Enabled

+

+

+

Dynamic

QTD(Feb) ~

Label Only

Feb +

~

[0: [Jan]]

[0: [Jan] + [Feb]]

Stored

Page 85: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Редактор формул

Аналогичен «block storage» редактору:

• Списки выбора• Автоматическое

заполнение• Цветовое кодирование

Page 86: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Ссылки на значения

1. Americas Sales / Geography Sales

2. Europe Sales / Geography Sales

3. Asia Pacific Sales / Geography Sales

4. No Region Sales / Geography Sales

5. Geography Sales / Geography Sales

[Net Sales] / ([Net Sales], [Geography])

Page 87: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Динамические ссылки

1. IBM Sales / Major Accounts Sales

2. Major Accounts Sales / Customer Sales

3. Acme Distribution Sales / Wholesale Accounts Sales

4. Wholesale Accounts Sales / Customer Sales

5. Customer Sales / Customer Sales

[Net Sales] / ([Net Sales], Ancestor ([Customer].CurrentMember, 1))

Page 88: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Проверка условий – IIF()

• Включает два возможных результата• Истина - действие• Ложь - действие

• Используется Missing ключевое слово для возврата #MISSING

• Не поддерживается - Else

IIF ([Gross Sales] > 900000 AND IsLevel ([Sales People].CurrentMember, 0), [Gross Sales]*.035, Missing

)

Page 89: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Database Partitioning

Page 90: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Типы Partition

• Replicated partitions• Transparent partitions• Linked partitions

Page 91: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Основные понятия

Исходная БД Целевая БД

Partition cellPartition area

Page 92: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Replicated Partitions

• Традиционный подход• Копия данных• Множество источников• Ручная репликация• Только «Block storage»

Источники данных

Целевые данные

Page 93: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Transparent Partitions

• «Окно» между БД• Бесшовная передача• Текущие данные• Требуется синхронизация

«Outline»

Источники данных

Целевые данные

Page 94: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Linked Partitions

• Точка перехода• Связывает объекты• Различные схемы• Нет репликации • Нет синхронизации схем

Источники данных

Целевые данные

Page 95: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Создание Partitions

1

2

3

4

Page 96: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Идентификационная информация

• Исходная и Целевая БД• Пользователь

• Права на запись на Целевой

• Права на чтение на Исходной

Page 97: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления

Проектирование «Aggregate Storage Partition»

• Поддерживаются «Transparent» и «Linked»

• Комбинируется с «Block»• Расширение аналитических

возможностей• Нет синхронизации

Replicated,linked или

transparent

«Block» Целевая БД

«Block» БД Источник

«Aggregate Storage» БД

Источник

Page 98: Oracle Essbaseessbase.ru/Uploads/Oracle+Essbase_copy.pdfEssbase •Универсальный OLAP-сервер для хранения, обработки и представления