Oracle Database SQL Tuning Workshop

Kursziele

  • Load-Test generieren
  • Problematische SQL-Anweisungen identifizieren
  • Ausführungspläne interpretieren
  • SQL-Anweisungen für optimale Performance anpassen
  • Tracing für Anwendungen durchführen
  • Entscheidungen des Query Optimizers hinsichtlich der Datenzugriffsmethode verstehen
  • Optimizer-Hints effizient verwenden

Kursbeschreibung

Im Kurs “SQL Tuning Workshop” werden Analyseverfahren vorgestellt, die auf unterschiedlichen Detailebenen erkennen lassen, wie die Oracle-Datenbank SQL-Anweisungen ausführt. Die Teilnehmer lernen die verschiedenen Methoden kennen, mit denen sie auf Daten zugreifen können, welche Methoden unter bestimmten Umständen am effizientesten sind und wie sie sicherstellen können, dass die geeignetste Methode eingesetzt wird. Neben der Partitionierung werden Themen wie die Verwendung von Hints, Bind-Variablen und verschiedenen Arten von Indizes behandelt.

  • SQL mit geringer Performance identifizieren
  • Query Optimizer verstehen
  • Anwendungs-Tracing
  • SQL-Ausführung in Echtzeit überwachen
  • Ausführungspläne interpretieren

Kursdaten

Dauer:3 Tage

Preis inkl. MwSt:  1.428,00€ p.P.

 

Kurs Details

 

Einführung

  • Effizientes SQL & Beispiele
  • Ineffizientes SQL & Beispiele
  • Tuning-Tools & Überblick
  • Tuning-Szenarios & Beispiele
  • Tuning Tasks & Überblick

Architektur der Oracle-Datenbank & Überblick

  • Physische Struktur
  • Speicherstruktur
  • Speicherverwaltung
  • SQL-Anweisungen verarbeiten

Query Optimizer & Einführung

  • Query Optimizer-Funktionen
  • Selektivität
  • Kardinalität
  • Kosten
  • Optimizer-Verhalten mit Initialisierungsparametern steuern

Query Optimizer-Operationen

  • Zugriffspfade & Arten
  • Joins & Arten
  • Joins & Ausführung
  • Sortiervorgänge

Ausführungspläne interpretieren

  • Methoden für die Anzeige von Ausführungsplänen
  • Ausführungspläne interpretieren
  • DBMS_XPLAN-Package

Workshop & Optimizer-Pläne beobachten

  • Zugriffspfad für Abfragen einer einzelnen Tabelle bestimmen
  • Join-Reihenfolge und -Methode für Abfragen mehrerer Tabellen bestimmen
  • Selektivität, Kardinalität und Kosten von Abfragen bestimmen
  • Parse-Bäume basierend auf Ausführungsplänen aufzeichnen

Effizientes SQL erstellen

  • Statistiken mit SQL Tuning Advisor analysieren
  • Wann sind Table Scans geeignet?
  • Operatoren
  • Indizes
  • Dynamisches Sampling
  • Prädikatreduzierung verarbeiten
  • Analytische Funktionen für die Performance

Workshop & SQL-Tracing und -Tuning

  • Ineffizientes SQL identifizieren und optimieren
  • Korrekte Join-Reihenfolge und -Art ermitteln
  • Dynamisches Sampling

Bind-Variablen

  • So verwenden Sie Bind-Variablen
  • Bind-Variablen-Peeking
  • SQL für die gemeinsame Nutzung von Cursorn erstellen
  • Adaptive Cursor Sharing

Anwendungs-Tracing

  • EM
  • DBMS_MONITOR
  • Instrumentierung
  • SQL Trace-Funktion
  • TKPROF

Workshop & Anwendungs-Tracing und -Tuning

  • End-to-End-Tracing für Anwendungen
  • Alternativen abwägen und implementieren

Query Optimizer-Entscheidungen

  • Tracing von Optimizer-Aktivitäten durchführen
  • Auswirkungen von Optimizer-Statistiken auf die Performance
  • Trace-Ausgabe 10053 interpretieren

Workshop & Optimizer-Hints

  • Tracing für Optimizer-Verhalten durchführen
  • Bestimmen, warum ein gewünschter Plan nicht verwendet wird
  • Mit Hints nachweisen, dass ein besserer Plan existiert

Workshop & Korrekturmaßnahme

  • Ursache für langsamere SQL-Ausführung nach Anwendungs-Upgrade bestimmen
  • SQL-Tracing mit DBMS_MONITOR
  • Probleme identifizieren, die DBA-Maßnahmen erfordern
  • Korrekturmaßnahmen prüfen

Performance-orientierte Methoden

  • Häufige Probleme bei der Datenbank-Performance
  • Performance-orientiert entwickeln
  • Tuning-Methoden

Weitere Tuning-Methoden

  • Partitions-Pruning
  • Materialized Views
  • Abfragen für parallele Ausführung optimieren
  • SQL Tuning Sets

Workshop & Weitere Methoden

  • Partitionen
  • Abfragen parallelisieren
  • SQL-Ausführung in Echtzeit überwachen

      Sie haben Interesse?

      Wir nehmen ihre Anfragen gern entgegen!