Performanceanforderungen einer BI-Applikation Erläutert anhand von Praxisbeispielen
SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold
Bronze Sponsor SQLSaturday Rheinland
Silver Sponsor SQLSaturday Rheinland
Gold Sponsor SQLSaturday Rheinland
You rock! SQLSaturday Rheinland
Save the date! SQLSaturday Rheinland 2015
Agenda 1.Zu meiner Person 2.Motivation für das Thema 3.Vorstellung des Praxissystems AdvA 4.Einflussfaktoren Ladeperformance 5.Einflussfaktoren Abfrageperformance 6.Zusammenspiel Lade-/Abfrageperformance 7.Frühzeitige Analyse der Performance SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold
Zu meiner Person Name: Bastian Sold Geboren , Leverkusen Unternehmen: Pharmakonzern seit Abteilung: Financial Reporting & Analytics Projektumfeld: Advanced Analytics seit FOTO SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 1
Motivation für das Thema Wandel der IT BI stetig bedeutsamer für unternehmensstrategische Entscheidungen Abfrageperformance stellt präsentes Thema dar Quelle: BARC „Der Markt für Business Intelligence in Deutschland 2013“ SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 2
SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Vorstellung des Praxissystems AdvA Seite 3 Live seit April 2012 Finanzdaten von Bayer HealthCare SQL Server 2008 R2 Früher: Ca. 50 Controller Heute: über 600 Nutzer Advanced Analytics
Einflussfaktoren Ladeperformance Datenvolumen Full-Load Delta-Load Schnittstellenkommunikation SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 4
Einflussfaktoren Ladeperformance Schnittstellen AdvA Verschiedenen Konstellationen Besondere Anforderungen Häufige Ladeläufe SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 5
Tabelle Staging Area Tabelle SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold / Einflussfaktoren Ladeperformance Schnittstellen Seite 6 PUSH PULL
Einflussfaktoren Ladeperformance Schnittstellen Tabelle Staging Area Tabelle SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 7 PULL PUSH
Einflussfaktoren Ladeperformance Parallelität Schnelle Durchlaufzeiten Ressourenintensiv Abhängigkeiten Datenvolumen Full-Load Delta-Load Schnittstellenkommunikation SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 8
Einflussfaktoren Ladeperformance Jobeinplanung 30 Sekunden RunJobQueue 10:02 10:00 Filter Run =1 Job 1 Job 2 Job 3 10:01 Festlegung der Reihenfolge … … … Load_x x1 0 Load_x x2 0 Load_y y1 1 Jobkette Job Run Update Run = 1 1 Tag ajslkdajlksd123i o12j3klajlkdasda slkdajslkdajslkda jslkdajksldajlksdl kjsadjlkasdjlkasd jklasdjklasdjlkas dljkasdlkj Job Initialload Stored Procedure SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 9
Einflussfaktoren Ladeperformance Parallelität Schnelle Durchlaufzeiten Ressourenintensiv Abhängigkeiten Komplexität Gestaltung des Ladeprozesses Datenvolumen Full-Load Delta-Load SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 10
Einflussfaktoren Ladeperformance Synchrone und Asynchrone Tasks MonatUmsatz Jan10500 Feb11000 März10500 April10000 MonatUmsatz MonatUmsatz Jan10500 Feb11000 März10500 April10000 Zwischenspeicher MonatUmsatz SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold /4 =10500 Seite 11
JahrMonatArt 2015MarchBUD 2015MarchBUD 2015AprilBUD 2015AprilBUD 2015MayBUD 2015MayBUD Einflussfaktoren auf die Ladeperformance Tabellenbeladung DELETE […] WHERE = APRIL INSERT […] SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 12
JahrMonatArt 2015MarchBUD 2015MarchBUD 2015AprilBUD 2015AprilBUD Einflussfaktoren Ladeperformance Tabellenbeladung SELECT Partition April 2015 TRUNCATE […] INSERT […] MERGE-Befehl SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 13
Auswirkungen schlechter Ladeperformance SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 14 Ressourcennutzung Aktualität der Daten Sperrung von Tabellen
Einflussfaktoren Abfrageperformance Architektur Hardwarearchitektur Softwarearchitektur SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 15
Einflussfaktoren Abfrageperformance Architektur SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 16 Skalierbarkeit Trotz sinkender Hardwarekosten präsente Thematik SSD statt HDD oder direkt Hauptspeicher
1 OLAP-Server DB ETL Prod-System … n Einflussfaktoren Abfrageperformance Architektur Load-Balancer DB OLAP ETL Dev-System DB OLAP ETL QA-System Server Funktion SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 17
Einflussfaktoren Abfrageperformance Datenmodell DWH Ansatz Gestaltung der Tabellen Architektur Hardwarearchitektur Softwarearchitektur SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 18
Einflussfaktoren Abfrageperformance Datawarehouse-Ansatz SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Source I Source II Source III Mart I Mart II Genormte Dimension DWH Kimball Design DatenorientiertKundenorientiert Seite 19 Source I Source II Source III Mart I Mart II DWH Inmon Design Unternehmens- weite
D D D D D Fakten D D D D D D D D D D D D D Vorteile: Nutzerfreundlicher Wartungsfreundlicher Höhere Performance Nachteile: Höhere Aufwand für Sicherstellung der Datenkonsistenz Redundanzen in der Datenhaltung Star Schema Snowflake Schema SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Einflussfaktoren Abfrageperformance Datenmodell Seite 20
Einflussfaktoren Abfrageperformance Datenmodell Gestaltung der Tabellen Architektur Hardwarearchitektur Softwarearchitektur Konfiguration Dynamische Speicherverwaltung Partitionierung Berechnung von Aggregaten SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 21
1 OLAP-Server DB ETL Prod-System … n DB OLAP ETL Dev-System DB OLAP ETL QA-System Load-Balancer Server Funktion Relativ wenige Ressourcen für Abfragen Mehr für Entwicklung (SSIS und DB) Alles ist auf einem Server Primär Abfragen Trotzdem SSIS und DB nahezu gleichviel Platz wie SSAS Teilen sich ein Server Sämtliche Ressourcen für Abfragen Getrennte Server SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Einflussfaktoren Abfrageperformance Konfiguration Seite 22
Einflussfaktoren Abfrageperformance Datenmodell Gestaltung der Tabellen Abfrageoptimierung Aufbau der MDX-Abfragen Architektur Hardwarearchitektur Softwarearchitektur Konfiguration Dynamische Speicherverwaltung Partitionierung Berechnung von Aggregaten SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 23
Einflussfaktoren Abfrageperformance MDX-Verarbeitung MDX Dimension Fakten Formula Engine Storage Engine Abfragefluss Antwortfluss SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 24 Formula Engine Cache Storage Engine Cache Engpass zwischen Formula Engine und Storage Engine Möglichst viel aus dem Cache bedienen
Einflussfaktoren Abfrageperformance MDX-Verarbeitung Wurzel Knoten Blatt Ebene 3 Ebene 2 Blatt Ebene 1 Wurzel Knoten Blatt Knoten Blatt Knoten Blatt Ebene 3 Ebene 2 Blatt Ebene 1 Ebene 4 Blatt SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 25
AdvApedia Optimierung auf Rückfrage Usage-Based Optimization SQL Profiler SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Einflussfaktoren Abfrageperformance M öglichkeiten Example Seite 26
Zusammenspiel Lade-/Abfrageperformance Lokale Datenhaltung Qualitätsprobleme Unzufriedenheit des Kunden steigt Erhöhter Supportaufwand Zusätzliche Systemlast Kunden laden Daten während des Tagesbetriebs Abfrageperformance leidet Langsame Antwortzeiten Neugierde des Controllers wird gehemmt Daten werden in lokale Systeme kopiert SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 27
Frühzeitige Analyse der Performance HardwareAuslastung Nutzerverhalten Angemessene Hardware vorhanden? Ist eine gleichmäßige Verteilung gegeben? Existiert eine gleich- mäßige Lastverteilung? Ist das Netzwerk stabil? Wann sind die „Stoßzeiten“? Wie ist die Nutzerzahlentwicklung? HardwareAuslastung SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 28
Frühzeitige Analyse der Performance SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Erhobene Daten müssen nicht transportiert werden Gezielte Selektion Übersichtliches Dashboard Seite 29
Fazit SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Wesentlicher Erfolgsfaktor stellt die Performance dar Zusammenhänge müssen betrachtet werden Probleme identifizieren keins darstellen Seite 30
F & A Noch Fragen? SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold Seite 31
DANKE! SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold
Bei weiteren Fragen kontaktieren Sie mich gerne unter : SQLSaturday Rheinland Performanceanforderungen einer BI- Applikation, Bastian Sold