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 der.

Ähnliche Präsentationen


Präsentation zum Thema: "Automatische Diagnose von Performanceproblemen in Datenbankmanagementsystemen Präsentation im Rahmen des Datenbankseminars zum Thema: Aktuelle Themen der."—  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 1. Motivation 2. Problembeschreibung und Grundlagen 1. Diagnose 2. Optimierung 3. Modelle zur Diagnose des DBMS 1. Das Ressourcenmodell 2. Das Workloadmodell 4. Das Diagnosesystem 1. Grundlegendes zum Diagnosebaum 2. Der verbesserte Diagnosebaum 5. Auswertung und Schlusswort

3 1.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 1.Motivation Was ist Tuning? Diagnose Ressourcenverwaltung (Externe Faktoren)

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

6 1. Motivation Vorhandene Ansätze: Chaudhuri und Weikum: Rethinking Database System Architecture in Proceedings of the 26 th 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 Kosten > 500 ? Angebot für Ausflüge ? nein Erholungsfaktor ? BulgarienTürkei FrankreichKaribik niedrighochniedrighoch Wurzel Knoten Blätter ja

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 = Einstellungswert S = Darstellung als Tupel: R =, D >

18 3. Modelle zur Diagnose des DBMS 3.1 Das Ressourcenmodell Beispiel: Anzahl der I/O-Cleaner R M I num_iocleaners= ; HIGH; ; >; 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) Changed Pages Threshold (CPT) Number of I/O-Cleaners (NOI)

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

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 = { } Ressource N = {N 1 ;N 2 ;…;N m } Threshold (Grenz-) Wert H = {H 1 ;H 2 ;…;H n } Indicator (beobachteter) Wert I = {I 1 ;I 2 ;…;I n } 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 (D i ) Informationen aus Expertenbefragungen oder eigenen Test Blätter = Tuningknoten (T i ) 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% ? T1 Tune the Buffer Pools D2 Async. Writes > 95% T2 Fix Number of I/O Cleaners D3 Average Lock Wait Time High? (>1000) D4 Lock Escalations? D5 Sortheap Overflows? …… yesno yes no

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

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: D1 Lock Escalations? T4 Tune the Buffer Pools D4 Async. Writes > 95% T5 Fix Number of I/O Cleaners D5 Average Lock Wait Time High? (>1000) … D3 Buffer Pool Hit Rate > 90% ? D2 Locklist in Use = Locklist size? (90%)? T3 Fix Number of I/O Cleaners T2 Increase Locklist size no yes

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 der."

Ähnliche Präsentationen


Google-Anzeigen