OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial...

36
OBIEE & EXADATA PERFORMANCE TUNING PROJEKTERFAHRUNG Moritz Werning

Transcript of OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial...

Page 1: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

OBIEE & EXADATA PERFORMANCE TUNING PROJEKTERFAHRUNG

Moritz Werning

Page 2: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Gliederung

•Einleitung •OBIEE Grundlagen •Ausgangssituation beim Kunden •Testzyklus & Systemüberwachung•Performance Tuning

–Tuning auf DB Ebene – Tuning auf OBIEE Ebene

•Zusammenfassung & Ausblick

2

Page 3: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG 3

sumIT AG

•Bietet Beratungs- & Implementierungs-dienstleistungen in der Schweiz

•Experten für–Data Warehousing und – Business Intelligence Lösungen

•Fokussiert auf Oracle-Technologie•‘BI Foundation specialized’-Partner•‘Data Warehousing specialized’-Partner•Exalytics-Kompetenzzentrum mit eigenem Server•Unser Motto: Get Value From Data•Besuchen Sie unsere Web-Site: www.sumit.ch

Page 4: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Der Referent

•Diplom Informatik (Bioinformatik) an der Eberhard Karls Universität Tübingen•Vier Jahre Erfahrung mit Oracle•Bereiche

–Data Integration–Data Warehousing–Business Intelligence

•Consultant bei sumIT AG

4

Page 5: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Gliederung

•Einleitung •OBIEE Grundlagen •Ausgangssituation beim Kunden •Testzyklus & Systemüberwachung•Performance Tuning

–Tuning auf DB Ebene – Tuning auf OBIEE Ebene

•Zusammenfassung & Ausblick

5

Page 6: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Oracle Business Intelligence System Architektur (single-host)

6

Page 7: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Grundlagen

7

Presentation Services BI Server DatabaseAnwender

Data Set(s)

Physische SQL(s)

Data Set(s)

Logische SQL(s)

„gerenderte“ Dashboardseite

Dashboard/Report Request

Page 8: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Gliederung

•Einleitung •OBIEE Grundlagen •Ausgangssituation beim Kunden •Testzyklus & Systemüberwachung•Performance Tuning

–Tuning auf DB Ebene – Tuning auf OBIEE Ebene

•Zusammenfassung & Ausblick

8

Page 9: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Ausgangssituation beim Kunden VOR EXADATA

•Oracle Database 11gR1 (ohne OLAP)•Kern Applikation und DWH auf der gleichen IBM Hardware•IBM Host am Limit •Hardware nicht auf DWH Anforderungen ausgelegt•I/O Durchsatz < 1 GB/s •Wachsende Anforderungen von allen Systemen•Performance von ETL und Abfragen nicht zufriedenstellend•OBIEE Infrastruktur OBIEE 11.1.1.5 Solaris•Migrationsphase: grosses BI Projekt in Entwicklung

–mit Blick auf EXADATA wenig Aggregate vorgesehen

9

Page 10: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Situation beim Kunden MIT EXADATA

•Oracle Exadata half racks (dedizierte DWH Umgebung)–Oracle 11gR2 & Exadata DB Maschine

•neue Performance Features – I/O Durchsatz (7 storage cells) bis zu 10.8 GB/s

•täglichen ETL Verarbeitung deutlich verkürzt•OBIEE Infrastruktur OBIEE 11.1.1.5 Solaris

– (Migration auf OBIEE 11.1.1.6. wird gerade durchgeführt)

•Abfrageperformance bis zu einem Faktor von 50 schneller •ABER nicht alle Dashboard Antwortzeiten entsprechen den Erwartungen

Weiterer Performance-Tuning-Bedarf

10

Page 11: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Physische Datenquellen

•Relationaler Datamart/Access Layer–entsprechend der Oracle Bestpractice für Datamarts– Star Schema–Partitioning: Faktentabellen Intervall partitioniert– Foreign Key & Not Null Constraints– Bitmap Indexes

•Nutzung Oracle Dimensions für Level und Hierarchie Informationen•Tägliche Statistik Berechnung mittels AUTO_SAMPLE_SIZE

11

Page 12: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Star Schema & Oracle Dimensionen

•Vorteile:– dimensionale Semantik bleibt in der DB erhalten–einfaches BI Model (Physical Layer ist ein Star Schema)–weniger Joins (im Vergleich zu 3NF)– ermöglicht Nutzung spezieller DB Performance Feature

•star query transformation•query rewrite

•Nachteile:– begrenzte Flexibilität

•nur 1:N Beziehungen zwischen Dimensionen und Faktentabellen

12

Page 13: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Gliederung

•Einleitung •OBIEE Grundlagen •Ausgangssituation beim Kunden •Testzyklus & Systemüberwachung•Performance Tuning

–Tuning auf DB Ebene – Tuning auf OBIEE Ebene

•Zusammenfassung & Ausblick

13

Page 14: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Testzyklus

•Definition Antwortzeit – Zeit bis die Dashboardseite alle Ergebnisse darstellt

•Erarbeitung der Erwartungswerte SOLL-Zustand (Definiere)–direkte Erhebung

•Bestimmung des IST-Zustandes (Messe)•TOP Down oder BOTTOM Up Analyse (Analysiere)•ZIEL: Finde die Ursachen langer Antwortzeiten•Teste Lösungsansatz (Messen und wieder Analysieren)•Review der Ergebnisse •Implementierung der Lösung

14

Page 15: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Testzyklus: Beispiel

•IST Zustand: Antwortzeiten Dashboardseite X > 2 Minuten•Soll Zustand: Antwortzeiten Dashboardseite X < 10 Sekunden•Analyse:

–Verantwortliche Komponente?•Ein Report mit einem physischen SQL DB Zeit > 2 Minuten

–Anzahl Reports auf Dashboardseite– Ist das physische SQL so, wie es sein sollte?– Ist der Execution Plan des physischen SQL sinnvoll?–Wie kann der Execution Plan optimiert werden? Statistiken aktuell?– Liegt die Ursache in der Kombination der Reports der Dashboardseite?

•Teste DB Hint und Seiteneffekte => Messen•Implementiere den Hint auf der Produktion

15

Page 16: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Eingesetzte Systemüberwachung

•BI Analytics: Session Management•BI Server: Usage Tracking Data•EM DB Console SQL Monitoring •FMW Control Metriken•Logviewer•OS Auslastung

16

Page 17: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Gliederung

•Einleitung •OBIEE Grundlagen •Ausgangssituation beim Kunden •Testzyklus & Systemüberwachung•Performance Tuning

– Tuning auf DB Ebene – Tuning auf OBIEE Ebene

•Zusammenfassung & Ausblick

17

Page 18: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Performance Tuning

•Akteure– BI Entwickler– Datenbankentwickler

– DBA– Systemadministratoren (OS & Netzwerk)

•gute Zusammenarbeit wichtig•Optimale Voraussetzungen:

– Klare definierte Ziele: •Optimiere die Gesamtperformance des OBIEE Systems•OBIEE ist langsamer als normal, finde und behebe Ursache•Ein Report hat lange Antwortzeiten, beschleunige den Report•Optimiere langsame Reports

– definierter Zeitrahmen18

Page 19: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Performance „Schrauben“

•Aufbau der Dashboardseite (Kombination von Analysen und Prompts)•Aufbau der darin enthaltenen Analysen (Reports)•RPD Datenmodel & RPD Statistik (Number of Elements)•Physische Datenbankstrukturen•Konfiguration: Fusion Middleware (FMW), BI Servers, BI Presentation Services •Betriebssystem Konfiguration und Hardwareausstattung (BI Server Host)•DB System und Netzwerk •DB Objekt Statistiken•Caches•Systemlast•...

19

Page 20: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Tuning auf DB Ebene

•DB-Workload auf der Datenbank besser verwalten•physische SQLs schneller ausführen•Waits reduzieren•Datenmengen reduzieren

20

Page 21: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

DB Workload Management

•Ressource Plan Management•Zuweisung über DB Services•Ressourcenzuweisung

– „Max. Auslastungsgrenzwert“–Aufteilung Resourcen–Anweisungswerte

•„Max. Parallelitätsgrad“•„Max. Prozentsatz von Parallel Server-Ziel“ •..

– Schwellenwerte •Grenzwerte für die Ausführungszeit (s)

21

Page 22: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Parallel Query-Degree of Parallelism (DOP)

•einfache Möglichkeit zur Beschleunigung•Vorsicht vor Concurrency Waits•Oracle 11gR2 - Auto DOP

–parallel statement queueing – in memory parallel processing

•Tests mit DBA sinnvoll

22

Page 23: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Table Compression

•Oracle Exadata HCC (Hybrid Columnar Compression) – reduziert Datenmengen– verringert Ausführungszeiten

•QUERY LOW compression (Exadata only) sinnvoll

23

Page 24: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Tuning auf FMW & OBIEE Ebene

•Verbesserung der Gesamtperformance durch Konfigurationsanpassungen der verschiedenen Komponenten

•Verringerung der Antwortzeiten einzelner Dashboadseiten•Verringerung der Antwortzeiten einzelner Reports

24

Page 25: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Performance Konfigurationseinstellungen FMW & OBIEE

•Fusion Middleware Control– Sessionhandling

•BI Server NQSConfig.INI– SORT Einstellungen– Server Einstellungen–Cache Einstellungen

•BI Presentation Server Instanceconfig.xml–Cache Einstellungen–View, Charting & Queue Einstellungen

25

Page 26: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

OBIEE Caches

•Abfragecaches verkürzen die Antwortzeiten für die meisten Abfragen massiv•BI Presentation Server Cache •BI Server Cache

–Query Result Cache–Query Plan Cache

•Option RAM-Disk für die Cache Dateien •Cache Strategie entwerfen und umsetzen

– sinnvolles Cache Seeding nach wichtigen ETLs z.B. MEVs – die wichtigsten Dashboardseiten sollten sich für die wichtigsten Prompt Einstellungen im Cache befinden

– logical SQL für Cache Seeding kann per Usage Tracking extrahiert werden

26

Page 27: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Aggregat Tabellen auch mit Exadata

•trotz großartigen I/O Durchsatz der Exadata –Aggregat Tabellen sind sinnvoll und notwendig

•Query Rewrite auf Materialized Views nicht zuverlässig•Alternativen:

–Nutzung Aggregate Persistence Wizards – Einbindung manuell erstellter und geladener Tabellen oder MViews in das BI Datenmodell

27

Page 28: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

OBIEE Connection Pool Konfiguration

•Maximum Connections = 20% der Anzahl gleichzeitiger Anwender * Anzahl Analysen je Dashboardseite (besser Anzahl physischer SQL Abfragen)

•ENABLE/DISABLE Star Query Transformation•ENABLE/DISABLE Parallel Query•PARALLEL_DEGREE_POLICY•Parallel Min-Time-Threshold•Force Parallel Local•Dynamic Sampling Level

28

Page 29: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

DB Hints in OBIEE (1)

•DB Hints für den allgemeinen Tabellenzugriff (Physical Tables)•sind in allen Abfragen mit der Tabelle enthalten

–PARALLEL(AUTO)–NOPARALLEL(T99999)– STAR_TRANSFORMATION–NO_STAR_TRANSFORMATION–USE_HASH(T99999)– ...

•Cacheable Option sinnvoll wählen

29

Page 30: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

DB Hints in OBIEE (2)

•Hints auf Physical Joins (Physical Complex Join, Physical Foreign Key)•diese Hints beeinflussen den Join zwischen zwei Tabellen •sie wirken sich nur aus, wenn der Join ausgeführt wird

– STAR_TRANSFORMATION–USE_HASH(T19999,T99991)–NO_STAR_TRANSFORMATION

30

Page 31: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

OBIEE & Star Transformation, wann und wie benutzen?

•Vorteil:– gut bei hoher Selektivität und vielen Dimensionen– verhindert:

•MERGE JOIN CARTESIAN oder NESTED LOOP mit Full Table Access

•Nachteil:– lange Laufzeiten bei einigen komplexen physischen SQLs möglich–bei Summary Querys ist STAR TRANSFORMATION oft langsamer als HASH JOINS

•=> STAR_TRANSFORMATION Hints auf Joins mit Detail Dimension •USE_HASH bei grossen Übersichtsabfragen

31

Page 32: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Zusammenfassung

•Hinterfrage Anwenderbeschwerden•Nutze alle zur Verfügungen stehenden Monitoring Möglichkeiten

–Ohne ein Montoring der DB ist Performance Tuning schwierig

•IO Performance der Oracle Exadata genial – aber Aggregate sind immer sinnvoll– Caching ist wichtig

•RPD DB Hints können helfen (Vorsicht)•Vorsicht vor Dashboardseiten, die sehr viele einzelne oder sehr große physische SQLs genieren

•Vorsicht mit Parallel Query –Auto DOP kann das Leben einfacher machen

•Vorsicht mit Star Query Transformation32

Page 33: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 33

ORACLE EXALYTICS

NOW AVAILABLE IN SWITZERLAND FOR PROOF OF SOLUTIONS

Ausblick - Exalytics

Page 34: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

Copyright © 2012, Oracle and/or its affiliates. All rights reserved. 34

EXALYTICS Centers of Excellence

EXALYTICS Live Shows : 4th of December, Beau Rivage Palace,

Lausanne, 08:30 – 12:00 5th of December, Au Premier, Zürich

HB, 08:30 – 12:00

Proof of Solutions directly in your premises

Page 35: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Fragen?

?

35

Page 36: OBIEE & EXADATA - doag.org · PDF file•IO Performance der Oracle Exadata genial –aber Aggregate sind immer sinnvoll –Caching ist wichtig •RPD DB Hints können helfen (Vorsicht)

03/2012© 2012 sumIT AG

Kontaktadresse

Moritz WerningsumIT AGTäfernstrasse 28CH-5405 Baden-DättwilSchweiz

Telefon: +41 (0) 56 470 25 00Fax: +41 (0) 56 470 25 05E-Mail: [email protected]: www.sumIT.ch

36