Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Automatische Diagnose von Performanceproblemen in Datenbankmanagementsystemen Präsentation im Rahmen des Datenbankseminars zum Thema: „Aktuelle Themen.

Ähnliche Präsentationen


Präsentation zum Thema: "Automatische Diagnose von Performanceproblemen in Datenbankmanagementsystemen Präsentation im Rahmen des Datenbankseminars zum Thema: „Aktuelle Themen."—  Präsentation transkript:

1 Automatische Diagnose von Performanceproblemen in Datenbankmanagementsystemen
Präsentation im Rahmen des Datenbankseminars zum Thema: „Aktuelle Themen der DB-Forschung und –Entwicklung“ Friedrich-Schiller-Universität Jena Fakultät für Mathematik und Informatik Lehrstuhl für Datenbanken und Informationssysteme Gehalten von Christian Stützer

2 Inhaltliche Gliederung
Motivation Problembeschreibung und Grundlagen Diagnose Optimierung Modelle zur Diagnose des DBMS Das Ressourcenmodell Das Workloadmodell Das Diagnosesystem Grundlegendes zum Diagnosebaum Der verbesserte Diagnosebaum Auswertung und Schlusswort

3 Motivation Ständig größer werdende Datenbanken
Admins (DBA) „kämpfen“ mit immer mehr Einstellungsparametern um Performance garantieren zu können ( wachsender Zeitaufwand) Fehlende finanzielle Mittel  Automatisches Tuning spart Zeit und Kosten !

4 Motivation Was ist Tuning? Diagnose Ressourcenverwaltung
(Externe Faktoren)

5 Diagnosebaum + Ressourcenbaum
1. Motivation Ablauf des gesamten Tuningprozess: DBMS-Dokumentation Expertenwissen Diagnosebaum + Ressourcenbaum Ressourcenliste Tuning-Algorithmus Zu tunende Ressource Performance-Monitor Performancedaten Zustand = getuned ??? ja nein END.

6 1. Motivation Vorhandene Ansätze:
Chaudhuri und Weikum: „Rethinking Database System Architecture“ in „Proceedings of the 26th International Conference on Very Large Databases“, 2000 Hellerstein: „Automated Tuning Systems“ in „Proceedings of the 1997 Computer Measurement Group“, 1997 Hart et al: „An Approach To Automated Problem Isolation For Performance Management“ in Proceedings of the Computer Measurement Group“, 1999

7 2. Problembeschreibung und Grundlagen 2.1 Diagnose
Diagnose = Finden der Ressourcen mit „schlechter“ Performance Zwei verschiedene Diagnosesysteme: 1.) Regelbasierende Diagnose Informationen aus Expertenbefragung Erstellen eines Entscheidungsbaumes Durchlaufen des Baumes m.H. von Regeln und Fakten

8 2. Problembeschreibung und Grundlagen 2.1 Diagnose
Beispiel eines Regelbasierenden Entscheidungsbaumes zur Bestimmung des Urlaubsziels Wurzel Kosten > 500€ ? nein ja Angebot für Ausflüge ? Erholungsfaktor ? Knoten niedrig hoch niedrig hoch Bulgarien Türkei Frankreich Karibik Blätter

9 2. Problembeschreibung und Grundlagen 2.1 Diagnose
2.) Modellbasierte Diagnose Abbildung des Systems auf ein Modell Modell soll die Fehler des Systems aufzeigen Primäre Anwendung: Stromkreise Problem bei DBMS: Zusammenhänge im DBMS hoch komplex und zu ungenau erforscht  Zur Diagnose eines DBMS eher ungeeignet !

10 2. Problembeschreibung und Grundlagen 2.1 Diagnose
Wie wird Performance gemessen? Standardisierte DB-Benchmarks: Vorgabe durch Transaction Processing Performance Council (TPC) Wichtigstes Benchmark: TPC-C Erzeugt 5 Transaktionstypen in Form eines OLTP-Workload Performancemaß = Transactions per Minute (tpmC) Weitere Benchmarks: TPC-H (auf OLAP basierend), TPC-R und TPC-W

11 2. Problembeschreibung und Grundlagen 2.2 Optimierung
„Optimierung ist eine Technik zur Kalkulation der bestmöglichen Ressourcenauslastung, die notwendig ist, um ein vorgegebenes Ergebnis zu erreichen.“

12 2. Problembeschreibung und Grundlagen 2.2 Optimierung
Anwendung von Optimierungsmethoden auf das Diagnoseproblem: Allgemeine Optimierung  zu aufwendig! Modell der Linearen Programmierung  zu zeitintensiv! Fallbasierende Argumentation  einschränkende Annahmen widersprechen DBMS-Performanceproblemen! Expertensysteme  sehr umfangreiches Regelsystem!

13 2. Problembeschreibung und Grundlagen 2.2 Optimierung
Welchen Nutzen können wir nun aus den vorhandenen Modellierungsmethoden ziehen??? Verwendung des Ansatzes eines Expertensystems Regeln für die Diagnose der Ressourcen erstellen  Regelbasierenden Entscheidungsbaum (=Diagnosebaum) zur automatischen Diagnose verwenden!

14 3. Modelle zur Diagnose des DBMS
Grundlegende Annahmen: Hardware- und Softwareressourcen sind begrenzt DBMS-Performance ist abhängig von den DBMS-Ressourcen Hardware arbeitet einwandfrei

15 3. Modelle zur Diagnose des DBMS 3.1 Das Ressourcenmodell
Modell beschreibt die Beziehungen zwischen den einzelnen Ressourcen Bildet diese Beziehungen im Ressourcenbaum ab

16 3. Modelle zur Diagnose des DBMS 3.1 Das Ressourcenmodell
Was sind Ressourcen? Definition: „Ressourcen sind Objekte auf die das DBMS zurückgreift und deren Umfang, Betrag eingestellt werden kann.“ Unterscheidung von Physischen Ressourcen Logischen Ressourcen

17 3. Modelle zur Diagnose des DBMS 3.1 Das Ressourcenmodell
Ressource wird beschrieben durch folgende Attribute: Auswirkung auf die Performance  I є {high,medium, low} Zugelassener Bereich  A = „set“ Default Wert  D = „Wert“ Marker Wert  M = < mname,mvalue > Einstellungswert  S = < sname,svalue>  Darstellung als Tupel: R = < M, I, < S, A >, D >

18 3. Modelle zur Diagnose des DBMS 3.1 Das Ressourcenmodell
Beispiel: Anzahl der I/O-Cleaner R M I num_iocleaners= <<%of async writes; 95>; HIGH; <<num_iocleaners; 10>; <0-255>>; 1> S A D

19 3. Modelle zur Diagnose des DBMS 3.1 Das Ressourcenmodell
Wie werden die Beziehungen zwischen den Ressourcen dargestellt? Änderung der Einstellungen einer Ressource hat meist Einfluss auf die Performance einer Anderen Darstellung dieser Abhängigkeiten durch (gerichtete) Kanten Beispiel: Buffer Pool Size (BPS) Changed Pages Threshold (CPT) Number of I/O-Cleaners (NOI) = Ressourcenmodell bzw. (forward) Ressourcenbaum

20 3. Modelle zur Diagnose des DBMS 3.1 Das Ressourcenmodell
Forward Ressourcenbaum: Zeigt Einfluss einer Ressource auf eine Andere (wie gesehen) Direkte Nachfolger eines Knotens werden direkt beeinträchtigt Reverse Ressourcenbaum: Direkte Nachfolger haben einen direkten Einfluss auf den Vorgänger Vorteil: Ermittlung der Ressource mit schlechter Performance

21 3. Modelle zur Diagnose des DBMS 3.1 Das Ressourcenmodell
Beispiel eines Reverse Ressourcenbaum: Buffer Pool Size (BPS) Number of I/O-Cleaners (NOI) Changed Pages Threshold (CPT)

22 3. Modelle zur Diagnose des DBMS 3.1 Das Ressourcenmodell
Formale Darstellung des Ressourcenmodells: RM = {<R,<E>>} mit Ressource R und Menge von möglicher Beziehungen E Beispiel: RM = {<Bufferpoolsize; <ECPT,ENIO>>}

23 3. Modelle zur Diagnose des DBMS 3.2 Das Workloadmodell
Dient dem konkreten Auffinden von Performanceengpässen und beschreibt den Workloadtyp Wichtiger Teil des Diagnosesystems Drei verschiedene Workloadtypen: On-Line Analytical Processing (OLAP) On-Line Transaction Processing (OLTP) Mixture

24 3. Modelle zur Diagnose des DBMS 3.2 Das Workloadmodell
Modell zur Beschreibung der verschiedenen Workloadtypen: W = {<N; H; I>} Ressource N = {N1;N2;…;Nm} Threshold (Grenz-) Wert H = {H1;H2;…;Hn} Indicator (beobachteter) Wert I = {I1;I2;…;In} Engpass wird durch Abweichung zwischen Indiactor- und Threshold-Wert erkannt

25 3. Modelle zur Diagnose des DBMS 3.2 Das Workloadmodell
Wie trägt das Workloadmodell zur Diagnose bei? Im Diagnosebaum (regelbasierender Entscheidungsbaum) wird in jedem Konten eine Entscheidung m.H. des Workloadmodells getroffen!  Workloadmodell liefert die Fakten zur Entscheidung im Diagnosebaum !

26 4. Das Diagnosesystem 4.1 Grundlegendes zum Diagnosebaum
Ziel des Diagnosebaumes = Erzeugen einer Liste der zu tunenden Ressourcen Geschieht durch Zusammenspiel zwischen Workloadmodell und Diagnoseregeln Diagnoseregeln erstellen Entscheidungssituation Workloadmodell zeigt Engpässe auf und bestimmt den Weg durch den Diagnosebaum Ressourcenmodell gibt in Verbindung stehende Ressourcen an

27 4. Das Diagnosesystem 4.1 Grundlegendes zum Diagnosebaum
Aufbau des Diagnosebaums: Knoten = Entscheidungsknoten (Di) Informationen aus Expertenbefragungen oder eigenen Test Blätter = Tuningknoten (Ti) Welche Ressource soll getuned werden? Reihenfolge, nach der die Ressourcen betrachtet werden wird durch Diagnosebaum beschrieben

28 4. Das Diagnosesystem 4.1 Grundlegendes zum Diagnosebaum
Beispiel: D1 Buffer Pool Hit Rate > 90% ? yes no D2 Async. Writes > 95% yes no T1 Tune the Buffer Pools D3 Average Lock Wait Time High? (>1000) T2 Fix Number of I/O Cleaners yes no D4 Lock Escalations? D5 Sortheap Overflows?

29 4. Das Diagnosesystem 4.1 Grundlegendes zum Diagnosebaum
(Exakter) Ablauf des Diagnosesystems: Durchlaufen des Diagnosebaums Ressourcenliste Ressourcenbaum Erweiterte/ gekürzte Ressourcenliste Tuning-Algorithmus Zu tunende Ressource System ändert Ressourcenparameter Performance-Monitor Performancedaten Zustand = getuned ??? ja nein END.

30 4. Das Diagnosesystem 4.1 Grundlegendes zum Diagnosebaum
Initialisieren des Diagnosebaums: Nutzen der Informationen über Ressourcen aus DBMS-Dokumentation oder von Experten (DBAs) In DB2 kann der „Performance-Tuning-Wizard“ genutzt werden Threshold-Werte werden durch Tests gewonnen Threshold-Werte sehr wichtig, da bei falschen Werten falsche Diagnosen entstehen können

31 4. Das Diagnosesystem 4.2 Der verbesserte Diagnosebaum
Ziel: Finden der besten möglichen Threshold-Werte Vorgehen: Änderung der Einstellungen (Setting-Wert) jeweils einer Ressource Vorgehen nach vorher bestimmter Politik Vergleich der Benchmarkergebnisse (TPC-C)

32 4. Das Diagnosesystem 4.2 Der verbesserte Diagnosebaum
Tunen des Diagnosebaumes am Beispiel der Ressource „Number of I/O-Cleaners“

33 4. Das Diagnosesystem 4.2 Der verbesserte Diagnosebaum
Unterschiede zum initialisierten Diagnosebaum: „Bessere“ Threshold-Werte Eliminierung von Ressourcen ohne signifikanten Einfluss auf die Performance Wurzel fragt nach Lock-Escalations

34 4. Das Diagnosesystem 4.2 Der verbesserte Diagnosebaum
Beispiel: yes D1 Lock Escalations? no D3 Buffer Pool Hit Rate > 90% ? D2 Locklist in Use = Locklist size? (90%)? yes no yes no T2 Increase Locklist size T3 Fix Number of I/O Cleaners D4 Async. Writes > 95% T4 Tune the Buffer Pools no yes D5 Average Lock Wait Time High? (>1000) T5 Fix Number of I/O Cleaners

35 5. Auswertung und Schlusswort
Probleme in der Praxis: Regelmäßige Veränderung des Workload Reverse Ressorcenbaum und verbesserter Diagnosebaum müssen „per Hand“ erzeugt werden Nicht alle DBMS unterstützten dynamische Einstellung der Ressourcen Performanceprobleme lassen sich nicht immer exakt auf eine Ressource zurückführen

36 5. Auswertung und Schlusswort
Zur Realisation der automatischen Diagnose sind weitere Forschungen und Entwicklungen in folgenden Beereichen notwendig: Dynamische Ressourceneinstellungen in DBMS Intelligente Tuning-Algorithmen Implementierung des Diagnosesystems in ein DBMS


Herunterladen ppt "Automatische Diagnose von Performanceproblemen in Datenbankmanagementsystemen Präsentation im Rahmen des Datenbankseminars zum Thema: „Aktuelle Themen."

Ähnliche Präsentationen


Google-Anzeigen