Побудова аналітичної частини корпоративної інформаційно-аналітичної системи засобами Oracle OLAP Option і BI Beans

Н. О. Боярський, А. В. Шовкун


Стаття присвячена практичним питанням створення аналітичної частини корпоративної інформаційно-аналітичної системи. Розглядаються можливості Oracle OLAP Option для створення багатовимірних вітрин даних і Oracle BI Beans для створення аналітичних програм, що надають доступ до даних у OLAP Option. Докладно розглядається приклад створення аналітичного програми, в якому проектування вітрини даних ведеться засобами Корпоративного Каталогу показників компанії ЛАНІТ на основі Oracle OLAP Option.


Введення


Типова архітектура корпоративної інформаційно-аналітичної системи (КІАС) включає в себе: буферну область (оперативний склад даних – ОСД), центральне сховище даних (ЦХД), вітрини даних (ВД) та аналітичні програми. Клієнтське аналітичне додаток являє собою набір інструментів, призначених для вилучення, аналізу та подання інформації зі сховища даних для потреб фахівців підприємства. Стандартом де-факто стало використання OLAP інструментів для аналізу даних у КІАС. Аналітична обробка інформації (On-Line Analytic Processing) – діяльність, пов'язана з побудовою запитів до сховища даних і візуалізацією текстових і числових даних, при якій використовуються багатовимірні моделі даних.

В якості рішення для побудови багатовимірних сховищ даних, вітрин даних та аналітичних (OLAP) додатків компанія Oracle пропонує сервер багатовимірних баз даних "Oracle Database with OLAP Option" та інтегровані з них аналітичні компоненти BI Beans. OLAP Option є компонентом СУБД Oracle Database і підтримує як реляційні (ROLAP), так і багатовимірні (MOLAP) структури для зберігання багатовимірних даних. Oracle BI Beans є набором Java-компонент для створення аналітичних запитів в середовищі JDeveloper. Компоненти BI Beans використовують метадані з каталогу OLAP Option для створення аналітичних звітів, графіків, а також для виконання операцій згортки, деталізації та інших стандартних OLAP операцій.


Архітектура і можливості OLAP Option і BI Beans


Архітектура OLAP Option представлена на Рис. 1. Центральною ланкою OLAP Option є OLAP Catalog (Каталог), який містить опис багатовимірної моделі вітрини даних в термінах "вимір", "показник", "Куб". Фізично OLAP каталог являє собою набір таблиць схеми OLAPSYS, в яких зберігаються всі метадані.



Рис. 1. Архітектура Oracle OLAP Option


Метадані каталогу розділені на три частини залежно від функціональних можливостей і використовуваних вихідних даних:



У таблиці 1 наведені можливості по опису вітрин даних, наданих різними механізмами OLAP Option.
























































Можливості моделей метаданих  CWM1  CWM2  AW 

Спосіб зберігання даних

ROLAP MOLAP

Альтернативні ієрархії (із загальним нижнім рівнем)

Так Так Так

Альтернативні ієрархії (з різними нижніми рівнями)

Ні Так Так

Зберігання фактів для проміжних рівнів ієрархій

Ні Так Так

Кількість таблиць фактів в кубі

1 >=1 Не стосується

Підтримка "Parent / Child" ієрархій

Ні Так Так

Автоматичний підрахунок агрегатів

Ні Так Так

Графічний інтерфейс

OEM Ні AWM, OWB

API для опису вітрини даних

PL/SQL PL/SQL DML

API для доступу до даних вітрини

Java OLAP API

Таблиця 1. Порівняння можливостей моделей метаданих OLAP Option


З наведеного порівняння видно, що найбільший інтерес для створення ROLAP вітрин даних представляє CWM2, проте опис метаданих для цього механізму можливо лише за допомогою скриптів PL / SQL, тому що компанія Oracle не пропонує для цього завдання будь-якого інструменту з графічним інтерфейсом.


В даний час існує рішення, яке дозволяє створювати скрипти PL / SQL для опису метаданих CWM2 з використанням графічного інтерфейсу користувача. Цим рішенням є програмний продукт "Корпоративний каталог показників" компанії ЛАНІТ.


Процес створення вітрини даних та аналітичного програми для доступу до неї складається з етапів, представлених в Таблиці 2.































ROLAP вітрина


MOLAP вітрина


1) Створення бізнес-метаданих


Створення метаданих CWM1 або CWM2, що описують багатовимірну модель.


Створити метадані AW, що описують багатовимірну модель даних.


2) Проектування структур даних


Спроектувати реляційні структури зберігання даних. Допускається використання схем "Зірка" і "Сніжинка".


Створення структур даних проводиться в OLAP Option автоматично в процесі створення метаданих AW.


2) Завантаження даних


Завантаження даних в спроектовані реляційні структури зберігання, наприклад, за допомогою Oracle Warehouse Builder.


Завантаження даних в багатовимірні структури зберігання (Analytic Workspace) з використанням мови OLAP DML (колишній Express SPL).


3) Опис меппінга бізнес-метаданих і структур даних


Опис меппінга бізнес-метаданих з реляційними структурами зберігання даних.


Опис меппінга виробляється в OLAP Option автоматично в процесі створення метаданих AW.


4) Розрахунок агрегованих значень (засобами OLAP Option)


5) Створення аналітичних звітів у середовищі JDeveloper, або створення Java-додатки, використовуючи компоненти BI Beans.


Таблиця 2. Процес створення вітрини даних у OLAP Option


Розглянемо більш детально процес створення вітрини даних та аналітичного додатки з використанням Корпоративного каталогу показників, Oracle OLAP Option (метадані CWM2) і BI Beans. Для цього ми пройдемо повний цикл створення аналітичного програми для вигаданої торгово-виробничої компанії "BEER".


Опис прикладу


У рамках розглянутого прикладу необхідно створити інформаційно-аналітичну систему в великої торгово-виробничої компанії "BEER", що займається виробництвом і реалізацією слабоалкогольних напоїв. Компанія має мережу заводів на території Росії, які виробляють напої, і регіональні центри реалізації.


У центральному офісі продажу здійснюється планування продажів продукції по регіонах і регіональним підрозділам. Затверджений план доводиться до регіональних центрів продажів. В даний час в регіональних центрах збирається і накопичується інформація про факти продажу. Розрахунок собівартості продукції виконується у виробничому підрозділі компанії.


Для аналізу продажів і розрахунку прибутковості необхідно консолідувати інформацію за плановими показниками (бюджет) і фактичним продажу (інформація з регіонів), а також по прибутку від реалізації продукції за часом з урахуванням діяльності кожного регіонального центру.


Особливостями розглянутої предметної області є те, що продажі продукції виробляються як поштучно, так і дрібним оптом (ящиками по 20 пляшок, упаковками по 6 банок і т.п.). А дані по регіональним центрам продажів можуть групуватися для аналізу різними способами: відповідно до територіально-адміністративним поділом (по федеральних округах) і по економічних районах Росії.


Опис метаданих (проектування системи)


Створюємо багатовимірну вітрину даних зі зберіганням деталізованих даних в реляційній структурі (ROLAP). Як зазначалося вище, для цього необхідно:



Для виконання цих дій буде використаний програмний продукт компанії ЛАНІТ "Корпоративний каталог показників", який надає графічний інтерфейс для керування метаданими, використовуваними для створення сховищ і вітрин даних, а також аналітичних додатків. Основні можливості Каталогу показників:



У розглянутому прикладі ми використовуємо Каталог показників для опису багатовимірної моделі даних, проектування відповідних реляційних таблиць і для експорту метаданих в каталог OLAP Option.


Опис багатовимірної моделі даних зазвичай починається з визначення вимірювань, на яких визначено показники. У процесі опису предметної області ми виділяємо чотири виміри (в дужках вказані способи реалізації вимірювань):






















   

Час (Зоря)


Рік


Квартал


Місяць


День


Упаковки (Сніжинка)


Ієрархія "Упаковка до елементу"


Всі упаковки


Тип тари


Група упаковок за кількістю


Упаковки по літражу

Ієрархія "Упаковка до групи"
Всі упаковки


Тип тари


Група упаковок за кількістю


Продукція (Зоря)


Вся продукція


Тип продукту


Продукт


Центри продажів (Сніжинка)


Ієрархія "За федеральних округах"


Країна


Федеральний округ


Місто

Ієрархія "За економічним районам"


Країна


Економічний район


Місто


Перевірені дані (вироджені)


Ознака достовірності (елементи виміру: "Перевірено", "Не перевірено")


Також виділяється шість показників, які об'єднані в один багатовимірний куб:



Розглянемо докладніше опис вимірювання Центри продажу в Каталозі показників. На Рис. 2 представлено опис рівнів, атрибутів та ієрархій цього виміру. Для кожного елемента можна навести докладний текстовий опис, що пояснює семантику вимірювання.



Рис. 2. Опис рівнів, атрибутів та ієрархій вимірювання


На Рис. 3 представлено загальний опис показника "Сума продажів", а на Рис. 4 зображена залежність показника від вимірювань.



Рис. 3. Опис показника. Загальні властивості.



Рис. 4. Опис показника. Залежність від вимірювань.


На Рис. 5 представлено опис куба "Дані з продажу". У куб включені всі показники і вимірювання з нашого прикладу. Також при описі характеристик куба є можливість задати параметри агрегації показників куба по кожному з вимірів.



Рис. 5. Опис куба. Показники якості ".



Рис. 6. Опис куба. Виміри.



Рис. 7. Опис куба. Агрегація.


Після завершення опису багатовимірної моделі ми можемо приступити до проектування моделі даних для нашого прикладу (див. Рис. 8). Для проектування реляційних моделей даних використовується Oracle Designer, інтегрований з Каталогом показників. Слід зазначити, що роботу по опису багатовимірної моделі даних може виконувати бізнес-аналітик або консультант. Проектування реляційної моделі даних виконується ІТ фахівцем. Oracle OLAP Option дозволяє використовувати для реалізації вимірювань наступні способи реалізації:




Рис. 8. Модель даних (Oracle Designer).


Як видно з рисунка, для вимірювання Центри продажів ми використовуємо три таблиці:



причому для ієрархії "За федеральних округах" використовуються таблиці DIM_BEER_ORG_SC і DIM_BEER_ORG_FO, а для ієрархії "За економічним районам" – DIM_BEER_ORG_SC і DIM_BEER_ORG_ER. Така організація таблиць відповідає схемі "Сніжинка".


Відповідно до постановкою завдання нам необхідно зберігати значення показників (факти) не тільки щодо конкретних елементів упаковки (банку, пляшка), але і по групах (ящик, пластиковий контейнер). Це означає, що фактичні дані можуть бути задані не тільки для самого нижнього рівня вимірювання "Упаковки", але і для більш високих рівнів. Ця вимога є однією з причин, по якій ми не можемо використовувати CWM1, а повинні використовувати модель CWM2 OLAP Option. Для вирішення цього завдання необхідно створити у вимірі "Упаковки" дві альтернативні ієрархії з різними нижніми рівнями. При цьому різні рівні виміру повинні бути розміщені в різних таблицях (Сніжинка). Таким чином, ми використовуємо для зберігання рівнів "Всі упаковки", "Тип упаковки", "Група упаковок за кількістю" таблицю DIM_PACKAGE_GRP, а для рівня "Упаковки по літражу" – DIM_PACKAGE_ITEM.


Після створення опису таблиць в базі даних необхідно зробити завантаження даних. Цей процес може виконуватися як з використанням Oracle Warehouse Builder, так і з використанням користувальницьких PL / SQL-скриптів. Важливою умовою при завантаженні даних є підтримка унікальності ідентифікаторів рівнів всередині виміру, тобто елементи вимірювання на різних рівнях повинні мати унікальні ідентифікатори. Доброю практикою є використання для ідентифікаторів сурогатних ключів типу NUMBER.


Після опису багатовимірної (бізнес) моделі і реляційної моделі для зберігання даних нам необхідно визначити відповідності (меппінга) між елементами двох моделей. Для цього необхідно в Корпоративному каталозі показників визначити меппінга вимірювань за схемами "Зірка", "Сніжинка", які використовуються в Oracle OLAP Option. Крім цих схем Каталог показників дозволяє описати меппінга за схемами "Parent-Child" і "Граф", які не використовуються безпосередньо в OLAP Option. Також можлива схема реалізації вимірювання "виродження", яка насправді відповідає схемі реалізації "Зірка", але меппінг повинен проводитися не на таблицю елементів вимірювання, а на таблицю фактів.


Опис меппіга вимірювання за схемами "Зірка" і "Сніжинка" складається з наступних етапів:




  1. Вибір таблиць, в яких будуть міститися елементи рівнів виміру (див. Рис. 9).



  2. Кожному атрибуту рівня ставиться у відповідність стовпець у таблиці елементів вимірювання, в якому будуть зберігатися значення цього атрибута (див.рис. 10).



  3. Для кожного рівня визначаються відповідності спеціальних параметрів реалізації (в термінах Каталогу показників – ролі) стовпцях у таблицях, на які були отмаппіровани рівні вимірювання (див. Рис. 11).



Рис. 9. Таблиці для реалізації вимірювання



Рис. 10. Меппінг атрибутів вимірювання



Рис. 11. Меппінг ролей вимірювання


Для визначення меппінга куба необхідно вибрати таблицю фактів та стовпці, які є зовнішніми ключами для ідентифікаторів вимірів (див. Рис. 12).



Рис. 12. Меппінг куба


Роботи по створенню бізнес-метаданих можуть (і повинні) здійснюватися бізнес-фахівцями, які знають предметну область. Роботи зі створення структур даних та визначенню меппінга повинні проводитися ІТ-фахівцями.


Після визначення багатовимірної (бізнес) моделі, реляційної моделі даних, зв'язків між ними (меппінг) і завантаження даних у вітрину необхідно описати наші метадані у OLAP Catalog.


Завантаження метаданих в OLAP Catalog


Механізм експорту метаданих з Каталогу показників у OLAP Catalog генерує скрипт для створення вимірювань, кубів і показників на основі інформації, специфіковані на попередніх етапах. Також в скрипті містяться команди меппінга логічних елементів (вимірів, рівнів, атрибутів, кубів, показників) на стовпці таблиць вітрини даних.


Для експорту метаданих до ККП використовується майстер, в якому проводиться довизначення специфічних для Oracle OLAP Option параметрів, таких як ім'я користувача, який має ролі OLAP_USER і OLAP_DBA, а також назву схеми, в якій зберігаються дані для вітрини. На Рис. 13 зображено один із етапів майстра експорту, на якому проводиться визначення спеціальних атрибутів час використаний в OLAP Option.



Рис. 13. Експорт метаданих. Визначення атрибутів вимірювання часу.


У таблиці 3 представлені відповідності метаданих у ККП елементам в Oracle OLAP Catalog.




























Метадані ККП


Елементи OLAP Catalog


Вимірювання


Dimension


Рівень


Level


Атрибут рівня


Dimension Attribute, Level Attribute


Ієрархія


Hierarchy


Показник


Measure


Куб


Cube


Форма звітності


Measure Folder


Таблиця 3. Відповідність метаданих OLAP Option та Каталогу показників


Створений у процесі експорту метаданих скрипт можна запустити в SQL * Plus або в будь-якому іншому SQL інструменті (наприклад, TOAD або SQL Navigator).


Лістинг скрипта опису метаданих наведений у Додатку 1.


У результаті запуску скрипта опису метаданих з нашого прикладу будуть записані в OLAP Catalog. Переглянути отримані метадані можна з допомогою уявлень (View) в схемі OLAPSYS, або за допомогою Analytic Workspace Manager, або використовуючи BI Beans.Напрімер, для перегляду описів вимірювань і кубів CWM2 з вистав в схемі OLAPSYS можна використовувати команди:


SELECT * from OLAPSYS.ALL$OLAP2_DIMENSIONS, 


SELECT * from OLAPSYS.ALL$OLAP2_CUBES. 


Повні описи всіх метаданих CWM2 (рівні, атрибути, ієрархії, показники, меппінга) можна переглянути в уявленнях з префіксом ALL $ OLAP2_ (валідні метадані) або DBA $ OLAP2_ (помилкові метадані).


Можливості Oracle OLAP Option


Oracle OLAP Option володіє багатими функціональними можливостями за описом метаданих CWM2. У розглянутому прикладі ми використовували тільки деякі з них:



Oracle OLAP Option CWM2 надає також і інші можливості для опису метаданих у вітрині даних:



Використання компонент Oracle BI Beans в аналітичних додатках


Компоненти Oracle Business Intelligence Beans є Java-компонентами, які можна використовувати при побудові власних аналітичних додатків. Отримувати аналітичні звіти з використанням BI Beans можна також безпосередньо з середовища JDeveloper. BI Beans є Java-компонентами, які в свою чергу використовують Oracle OLAP API, написану також Java.


При побудові звітів BI Beans використовують метадані з OLAP Catalog, причому вони можуть працювати зі всіма типами метаданих – CWM1, CWM2, AW. OLAP Catalog приховує від аналітичного програми фізичні аспекти реалізації вітрини даних. Для програми немає різниці, яка модель використана при проектуванні вітрини даних. Різниця існує тільки в тому, наскільки складні багатовимірні моделі даних можуть бути описані і в швидкості виконання аналітичних запитів.


Побудова аналітичних звітів у середовищі JDeveloper за допомогою майстрів, що підтримують технологію швидкої розробки додатків RAD, – це дуже проста і інтуїтивно зрозуміла процедура. Спочатку необхідно вибрати тип звіту (Таблиця, Крос-таблиця або Графік), а також вибрати показники, які повинні бути присутніми в звіті. Далі необхідно вибрати рівні та елементи вимірювань, від яких залежать показники. На останньому етапі можна задати параметри форматування звітів (підсвічування даних в залежності від їх значень, зміна шрифтів і т.п.). Найбільш інформативним звітом є Крос-таблиця (див. Рис. 14), в якій є можливість перегляду як даних від нижнього рівня до верхнього (Drill Up), так і від верхнього до нижнього (Drill Down).



Рис. 14. Звіти BI Beans. Крос-таблиця і графік.


Отримані звіти можна зберегти як на локальному диску, так і в спеціальному сховищі (BI Beans Catalog), що створюється в базі даних Oracle в окремій схемі.


Оскільки JDeveloper є досить "громіздким" інструментів, призначеним для розробників додатків, виклик майстрів побудови звітів BI Beans з його середовища є не найзручнішим рішенням завдання аналізу. Для бізнес-фахівців кращим рішенням є використання Java-додатки, що використовує компоненти BI Beans. Компанія ЛАНІТ пропонує окрім Корпоративного каталогу показників також і клієнтське аналітичне додаток, що використовує весь функціонал, представлений в BI Beans. Тут не наводиться докладний опис даного продукту, тому що це виходить за рамки цієї статті.


Висновок


В даний час компанія Oracle пропонує повну лінійку продуктів, призначених для аналізу даних. Для побудови сховищ і вітрин даних, а також аналітичних систем Oracle пропонує використовувати OLAP Option і BI Beans, які є комплексним і простим у використанні рішенням. Тандем з цих продуктів дозволяє в стислі терміни створювати повнофункціональні аналітичні системи. Єдиним етапом у створенні аналітичної системи, який через трудомісткість і відсутність підтримки в будь-яких продуктах Oracle уповільнює швидкість розробки, є створення метаданих CWM2 в OLAP Catalog.


Компанія ЛАНІТ пропонує як доповнюючого рішення програмний продукт "Корпоративний каталог показників", який дозволяє максимально швидко і якісно створювати метадані CWM2 в OLAP Catalog для їх подальшого використання в аналітичній системі. Другим рішенням компанії ЛАНІТ для вітрин даних є аналітичне Java-додаток, заснований на компонентах BI Beans.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*