OLAP Roadshow 062013

Werbung
1
<Insert Picture Here>
OLAP – mit multidimensionale Datenanalysen
zielgerichtet in Unternehmensdaten navigieren
Detlef E. Schröder, Leitender Systemberater DWH & BI
Oracle Deutschland B. V. & Co KG
Agenda
•
•
•
•
•
•
•
•
•
•
9:30 Begrüßung und Vorstellung
9:45 OLAP integriert ins DWH
10:25 Die Power von OLAP entdecken
10:55 Pause
11:10 Aufbau eines Würfels
11:40 Lösungsarchitektur mit Excel
12:10 Mittagspause
13:00 Lösung eines mittelständischen Unternehmens
13:45 F&A
14:00 Zusammenfassung und Abschluss
OLAP INTEGRIERT INS DWH
4
Die Datenbank Strategie von Oracle
für das DWH - Embedded Analytics
OLAP
SQL Analytics
Statistics
Data Mining
• Die Analyse zu den Daten bringen
• Die Datenbank Infrastruktur optimal nutzen
Oracle OLAP
Die Datenbank Infrastruktur optimal nutzen
Oracle Database 11g
Data Warehousing
Warehouse Builder
OLAP
Data Mining
•
•
•
•
•
•
•
Nur ein RDBMS-MDDS Prozeß
Nur ein Daten - Speicher
Nur ein Sicherheitskonzept
Nur eine Administration
Skalierbar (Grid / RAC)
Offen für alle SQL Werkzeuge
Offene Verbindung zu allen Oracle
Lösungen
Oracle OLAP - Ziele
• Die Verfügbarkeit von analytischen SQL – basierten
Abfragen und Ergebnissen von beliebigen BI-Tools
und Applikationen zu erhöhen
•
•
•
•
Hohe Abfrage Performance
Einfacher Zugang zu analytischen Berechnungen
Schneller, inkrementeller Update
Unter Verwendung des bestehenden Oracle Wissens
OLAP im Data Warehouse
Den Wert Ihres DWH mit Oracle OLAP steigern
• Vereinfachte Aggregat Verwaltung
• Abfragegeschwindigkeit maximieren
• Erweiterte Zeitreihen- und Statistische - Analysen
• Zentrale Metadatenverwaltung für Daten, Aggregate ,
Berechnungen und Sicherheit
8
OLAP im Data Warehouse
Jedes Data Warehouse kann von Oracle OLAP profitieren
• Jedes BI – Tool kann die Aggregate verwenden
• Jeder Anwender will herausragende Abfragegeschwindigkeit in
Reporting und Analyse
• Jeder Anwender will die komplexen Berechnungen und Kennzahlen
nutzen
9
OLAP im Data Warehouse
Integriertes Oracle OLAP ist vor einer externen Lösung von
den IT Abteilungen bevorzugt
• Es benutzt die selbe Datenbank wie bisher im Einsatz
• Es können die selben BI-Tools weiter verwendet werden
• Das bestehende Oracle Wissen kann weiter verwendet werden
• Integriertes Oracle OLAP ist sicher und skalierbar
10
Oracle OLAP Option
• Die Aggregat - Lösung für SQL basierte BI
Anwendungen
• Eine alternative zu Tabellen basierten
Lösungen zur Abfrage- und Update
geschwindigkeits Steigerung (MAV)
• Ein vollständiger multidimensionaler OLAP
Server
• Herausragende Abfragegeschwindigkeit bei
Ad Hoc – und unvorhergesehenen Abfragen
• Erweiterte Analytische Möglichkeiten für
jedes BI-Tool
• Schneller inkrementeller Update
11
Oracle OLAP Option
• Eine integrierte OLAP Lösungen
• Läuft in der Oracle Database
Enterprise Edition
• Die Daten werden in Oracle Data
Files gespeichert
• Die Meta Daten sind im Oracle Data
Dictionary
• Volle Kompatibilität mit RAC / Grid
12
Oracle OLAP Option
• Eine sichere Lösung
• Oracle User sind OLAP users
• SQL GRANT / REVOKE auf
OLAP Würfel und Dimensionen
• Kompatibel mit Virtual Private
Database
• Zellbezogene Sicherheit
Oracle Authentication
SQL Cube Access Control
Virtual Private Database
Fine Grained Cube Security
13
Oracle OLAP Option
• Eine offene Lösung
• Oracle Würfel und Dimensionen
sind verwendbar mit
• SQL
• PL / SQL
• Oracle OLAP API
• Transparenter Zugriff als cubeorganized materialized view
• SQL
SELECT
time,
product,
customer,
sales_ytd
FROM
sales_cube
14
Oracle OLAP Option
• Eine Lösung mit hohem
Funktionsumfang
•
•
•
•
•
•
•
Vielfältige Aggregationen
Zeitreihen
Indizes und Anteile
Ranking
Forecasting
Allokationen
Statistik
• Berechnungen sind integriert
in der Datenbank
• Zentral administriert und
qualitätsgesichert
• Verfügbar für jede Applikation
15
Oracle OLAP Option
• OLAP Würfel bieten eine überragende
Abfragegeschwindigkeit bei
unvorhergesehene Abfragen
• Verwendbar für Reporting
und Analyse
• Vorteil beim Wechsel von
Reporting in Analyse
16
Oracle OLAP Option
• OLAP Würfel stellen eine
schnelle Möglichkeit zum
inkrementellen Update zur
Verfügung
• Verwaltung aller Aggregate in
einem DB Objekt
• Schneller, inkrementeller MAV
Refresh
• Schnelle und inkrementelle
Aggregation
• Kosten basierte Aggregation
17
Oracle OLAP Option
• Ein Würfel kann verwendet werden als …
• … Aggregations - Lösung für SQL basierte BI Applikationen
in Form von cube-organized materialized views
• … analytische Datenquelle mit vielen Kennzahlen für SQL
basierte BI-Tools in Form von SQL cube-views
• … vollumfänglicher multidimensionaler Server für jegliche
multidimensionalen BI Werkzeuge
18
SQL Abfragen auf OLAP Würfel
BI Application
BI Application
SQL
SQL
Cube
Materialized
Views
Automatic
Query
Rewrite
Cube Views
Oracle Cube
19
Single Version of the Truth
Metadata
Data
Business Rules
OLAP Query
Extract, Load
& Transform (ELT)
SQL Query
Zentral verfügbare Daten, Metadaten und Geschäftslogik
20
Cube-Organized Materialized Views
Automatic Query Rewrite
BI
Application
SELECT
SUM(sales)
GROUP BY
quarter,
brand,
region,
channel
•
Automatic
Query Rewrite
•
•
•
Ein Würfel enthält alle
Aggregate für jegliche
Kombinationen
Ein Würfel kann als cubeorganized MAV verwendet
werden
Oracle schreibt
automatisch alle Abfragen
in den Würfel um
Ein Würfel kann damit für
eine Vielzahl von MAV
stehen
Fact Table: Sales by Day, Item, Customer and Channel
21
Cube-Organized Materialized Views
Fast, Incremental MAV Refresh
BI
Application
•
SELECT
SUM(sales)
GROUP BY
quarter,
brand,
region,
channel
MV Refresh
Ein Würfel wird aktualisiert
über das MAV System
• Schneller,
inkrementeller Update
über MAV logs
• Schnelle,
inkrementelle
Aggregationen
innerhalb des Würfels
• Effiziente Verwaltung
von lückenhaften
Daten
• Ersetzt hunderte von
MAV
Fact Table: Sales by Day, Item, Customer and Channel
22
Cube Organized Materialized Views
Beispiel
• Ein Vergleich von Tabellen basierten MAV gegenüber
einer cube-organized MAV mit dem Ziel:
• Abfragegeschwindigkeit der SQL bsierten BI Tools zu
erhöhen
• Die Erstellungs- und Update - Zeit zu verkürzen
• Datenbasis
• Daten einer Handelskette mit typischem Schnellen Wandel
• 7 Dimensionen
• 20 Millionen Faktzeilen
24
Cube Organized Materialized Views
Beispiel
• Vorgehen
• Indices und MAV wurden erstellt wie vom Oracle SQL Access
Advisor vorgeschlagen.
• 124 MAV
• 198 Indices
• OLAP Würfel und cube-organized MAV wurden durch den
DBA erstellt.
• 1 konprimierter Würfel
• 20% Vorverdichtung
• 1469 Test Abfragen
25
Cube Organized Materialized Views
Beispiel
• Vergleichs - Kennzahlen
• Die Zeit zum laden und vorbereiten der Daten
• MAV: Erstellung der MAV, Indices und Statistiken
• Würfel: Laden und Aggregieren der Daten
• Abfragegeschwindigkeit
• Die gleichen 1469 Abfragen gegen MAV und Würfel
26
Cube Organized Materialized Views
Beispiel - Ergebnisse
180
160
140
120
Zeit in Minuten zum
100
Load and Aggregate
Query
80
60
40
20
0
Table MVs
Cube MV
27
OLAP Cubes Views
SQL Abfragen auf einen Oracle OLAP Würfel
Der Würfel wird als Starschema
von relationalen Views
dargestellt
• Dimensionen und Fakt Views
• Detail- und Aggregatzeilen
• Analytische Berechnungen in
den Spalten
OLAP Würfel enthalen
• alle Ebenen der Aggregation
• umfangreiche analytische
Kennzahlen
28
Analytische Power für jedes SQL-Tool
Als Beispiel APEX
Application Express mit Oracle OLAP
SELECT cu.long_description customer,
f.profit_rank_cust_sh_parent,
f.profit_share_cust_sh_parent,
f.profit_rank_cust_sh_level,
f.profit,
f.gross_margin
FROM time_calendar_view t,
product_primary_view p,
customer_shipments_view cu,
channel_primary_view ch,
units_cube_view f
WHERE
AND
AND
AND
AND
AND
AND
AND
AND
t.level_name = 'CALENDAR_YEAR'
t.calendar_year = 'CY2006'
p.dim_key = 'TOTAL'
cu.parent = 'TOTAL'
ch.dim_key = 'TOTAL'
t.dim_key = f.TIME
p.dim_key = f.product
cu.dim_key = f.customer
ch.dim_key = f.channel;
Als Step by Step auf
www.oracledwh.de
29
Oracle OLAP Option
Zusammenfassung
• Ermöglicht jedem SQL basierten Werkzeug den
performanten Zugrif auf den analytischen Inhalt
• Kann verwendet werden als
• Aggregats – Lösung mit cube-organized MAV
• Vollumfänglicher multidimensional Server mit vielen
vorgerechneten Kennzahlen
• Integriert in die Oracle DB und Datendateien
• Sicher
• Skalierbar
• Administrierbar
30
31
DIE POWER VON OLAP ENTDECKEN
32
Oracle Databank Metadaten
Tabellen und Relationen
REGION
CUST
SALES FACT
INVENTORY
ITEM
TIME
Spalten Beziehungen
stehen nicht in den Tabellen Metadaten
REGION
ITEM
CUST
SALES FACT
INVENTORY
ITEM
TIME
item_key type_key
cat_key
Der Wert von Dimensionalen Metadaten
Dimensionen formalisieren die Beziehungen von Daten
Geography
REGION
CUST
SALES FACT
Product
INVENTORY
ITEM
Time
TIME
Der Wert von Dimensionalen Metadaten
Dimensionen formalisieren die Beziehungen von Daten
Geography
Product
REGION
Level-based Hierarchy
Category
CUST
SALES FACT
Type
Product
Item
INVENTORY
ITEM
Time
TIME
Definiert die
Geschäftslogik
Der Wert von Dimensionalen Metadaten
Dimensionen formalisieren die Beziehungen von Daten
Geography
Product
REGION
Complex Hierarchy
CUST
SALES FACT
INVENTORY
ITEM
Time
TIME
Auch komplexe
hierarchische Strukturen
Der Wert von Dimensionalen Metadaten
Dimensionen formalisieren die Beziehungen von Daten
Geography
Product
REGION
Hierarchical Relationships
CUST
Parent
SALES FACT
Descendants
Children
INVENTORY
ITEM
Time
TIME
Familien-Beziehungen für
Berechnungen
Der Wert von Dimensionalen Metadaten
Der Zeitbezug und ein Kalenderverständnis
Geography
REGION
CUST
SALES FACT
Product
INVENTORY
ITEM
Time
TIME
M
A
R
C
H
Sun
Mon
Tue
Wed
Thu
Fri
Sat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Fiscal Year End
Die Zeitdimension
bestimmt die
Zeitreihenanalyse
Der Wert von Dimensionalen Metadaten
Dimensionen werden über mehrere Würfel geteilt
REGION
Sales Cube
CUST
Product
Geography
SALES FACT
Time
INVENTORY
Inventory Cube
ITEM
Product
TIME
Time
Der Wert von Dimensionalen Metadaten
Aggregations - Regeln
REGION
Sales Cube
∑ Aggregation Rules
Product: Sum
Geography: Sum
Time: Sum
CUST
Product
Geography
SALES FACT
Time
INVENTORY
Inventory Cube
ITEM
∑ Aggregation Rules
Product: Sum
Time: Hierarchical Last
Product
TIME
Time
Der Wert von Dimensionalen Metadaten
Berechnungen die die dimensionalität verstehen
REGION
Sales Cube
CUST
Product
Geography
SALES FACT
Time
Calculations
• Sales
• YTD
• YTD Growth
• Market Share
• Product Alert
• Moving Average
• …
INVENTORY
Inventory Cube
ITEM
Product
TIME
Time
Calculations
• Balance
• Inventory Cost
• Stock Out
• …
Schnelle Antworten auf anspruchsvolle Fragen
Einfaches SQL für komplexe Abfragen
Abfrage mit OLAP Würfeln:
Abfrage ohne OLAP Würfel:
SELECT [breakout columns],
sales,
sales_prior_year
sales_ytd,
sales_ytd_prior_year
FROM sales_cube_view
WHERE [star join]
WITH sales_dense AS
(SELECT [breakout columns]
sales,
SUM(sales) over(PARTITION BY [breakout columns]
ORDER BY [time column] ASC range BETWEEN unbounded
preceding AND CURRENT ROW) AS sales_ytd
FROM
(SELECT [breakout columns]
a.sales
FROM
(SELECT [breakout columns]
SUM(f.sales) sales
FROM [table list]
WHERE [star join and other filters]
GROUP BY [breakout columns)
a PARTITION BY(breakout columns)
RIGHT OUTER JOIN
(-- need list of all time periods
SELECT DISTINCT [time columns]
FROM time_dim
b ON([join on relevant time level]))
) …
Continued…
Eigenschaften Analytischer Berechnungen
OLAP Berechnungen umfassen in der Regel:
•
Zeitreihen
– Period Ago, Year Ago, Year-to-Date, Moving Average
•
Vergleiche innerhalb einer Hierarchie, ebenenübergreifend
– Ratios, Share of Parent/Ancestor, Rank within Parent/Level
•
Referenz auf einen Dimensionswert
– Indexes
– Comparison to "top performer"
– Reference member at any aggregation level
•
Forecasts
– Linear, Linear Regressions, Holt-Winters, “Best-fit”, etc.
•
Modelle
– Gleichungssystem zum berechnen von Dimensionswerte (z.B.
Umlagen)
Unterstützung bei der Bildung von
Kennzahlen
• Die Definitionsmöglichkeiten unterstützen alle
gängigen Kennzahlen:
1. Kennzahlen Templates
2. Kennzahlen Gleichungen
3. OLAP DML Programme, Funktionen und Modelle
Kennzahlen Templates
Eine große Auswahl an herkömmlichen Kennzahlen
Kennzahlen Gleichungen
• OLAP Rechen - Syntax:
• Vergleichbar mit den SQL Analytischen Funktionen
• Erweiterung zur Unterstützung der OLAP Spezifika
• Auch unter Verwendung der OLAP DML
OLAP Rechen – Syntax
Ähnlich der Standard SQL Syntax
• Identisch zur SQL syntax bei:
• Zeilenweisen Berechnungen
• In etwa 90 Funktionen
• Beispiele: nvl, nullif, to_date, ||, replace, etc.
• Bedingungen
• Unterstützung aller standard Vergleichs - Operatoren
• Beispiele: case, decode, <, <=, =, >, >=, !=, etc.
Erweiterung zur Unterstützung der
OLAP Spezifika
•
•
•
•
Ebenenübergreifende Berechnungen
Hierarchie Verständnis enthalten
Zeitreihenanalysen ohne Vorberechnungen
Unter Anderem folgende Funktionen:
AVERAGE_RANK
AVG
COUNT
DENSE_RANK
HIER_ANCESTOR
HIER_CHILD_COUNT
HIER_DEPTH
HIER_LEVEL
HIER_PARENT
HIER_TOP
LAG
LAG_VARIANCE
LAG_VARIANCE_PERCENT
LEAD
LEAD_VARIANCE
LEAD_VARIANCE_PERCENT
MAX
MIN
RANK
ROW_NUMBER
SHARE
SUM
Erweiterung zur Unterstützung der
OLAP Spezifika
Am Beispiel der Window function RANK
• Ein OLAP Ausdruck ist vergleichbar mit vielen SQL Formeln
--OLAP
- Rank within parent at any level
RANK() OVER HIERARCHY (PRODUCT.STANDARD ORDER BY SALES_CUBE.QUANTITY DESC NULLS
LAST WITHIN PARENT)
--SQL
--Rank departments
RANK() OVER (PARTITION
--Rank categories
RANK() OVER (PARTITION
--Rank types
RANK() OVER (PARTITION
--Rank sub types
RANK() OVER (PARTITION
-- Rank items
RANK() OVER (PARTITION
BY total_product_id ORDER BY sales DESC NULLS LAST)
BY department_id ORDER BY sales DESC NULLS LAST)
BY category_id ORDER BY sales DESC NULLS LAST)
BY type_id ORDER BY sales DESC NULLS LAST)
BY sub_type_id ORDER BY sales DESC NULLS LAST)
Berechnungen mit OLAP DML
• OLAP DML eine multidimensionale prozedurale
Programmiersprache
• unterstützt looping, conditional logic, multidimensional
selection und mehr
• Beinhaltet hunderte von analytischen Funktionen
• OLAP DML kann eingesetzt werden für
• Kundenspezifischen Kennzahlen
• Um Zahlen zu ermitteln die auch gespeichert werden
können
• Forecasts
• Allokationen
• Gleichungssysteme (Modelle)
• Verteilung von Daten (Top – Down)
Berechnungen mit OLAP DML
Beispiel: Forecast
“Scope the forecast
limit geography to geography_levelrel eq 'REGION'
limit product to product_levelrel eq 'TYPE'
limit channel to 'ALL_CHANNELS'
limit time to time_levelrel eq 'MONTH‘
"Set forecast parameters for 'best fit'
fcset _handle APPROACH 'APPAUTO' periodicity 12 histperiods 36
"Execute the best-fit forecast
FCEXEC _handle time time INTO forecast_best_fit seasonal forecast_seasonal smseasonal forecast_smseasonal backcast sales_cube_sales
Berechnungen mit OLAP DML
Beispiel: Product Alert
“Look at product sales for the children of the current product
“Have they fallen compared to last year?
limit product to children using product_parentrel _product
limit product keep SALES_CUBE_SALES_PY_PCT_CHG lt 0
“If any products meet the criteria – return TRUE (an alert)
if statlen(product) gt 0
then return true
else return false
BNP Paribas
Advanced Time-Series Analyses in Real-Time
• Large European financial
institution
• Used by traders to help decrease
susceptibility to market volatility
• Replacing FAME Time Series
Database
• Forecasting, Analysis and
Modeling Environment
• Three billion stored facts on RAC
• Data updated every 2 seconds –
processing approximately 1m
records daily
• SQL-based custom application
used by 1500 concurrent users
The Gallup Organization
Healthcare Group
• Gallup asks over 1 billion questions annually
• Gallup Healthcare Group
• Conduct surveys measuring quality of care and patient loyalty
• Originally developed a reporting infrastructure that delivered static
reports to hospitals across the US
• Enhanced the interactivity and analytic content of solution
• Support over 1000 concurrent users
• Response time less than 2 seconds per query
• Reduced cost and complexity
• Leveraged Oracle Database investment
• Integrated OLAP into existing infrastructure (security, navigation,
XML/XSL application underpinnings)
• Lowered application development costs
• Reduced complexity for users
56
57
Herunterladen