Workshop
digicode: ODSQTU
Oracle SQL Tuning
Kurs-Facts
- Optimieren von SQL Statements
- Effizientes Erkennen, welche Anweisungen optimiert werden müssen und wie man sie schneller macht
- Identifizieren langsamer Statements und Verarbeitungen
- Kennen des Oracle Cost-based Optimizer
Nur weil ein SQL Statement das korrekte Ergebnis liefert, bedeutet das nicht, dass der Zugriff auf die Daten effektiv ist. Da Anwendungsentwickler/innen oft unter Zeitdruck stehen, wird das Optimieren von SQL Statements nicht selten vernachlässigt.
Im Workshop beginnen wir mit dem Identifizieren von langsamen Statements und Verarbeitungen, behandeln den Oracle Cost-based Optimizer und beschäftigen uns mit der richtigen Indizierung.
1 Oracle-Datenbank-Architekturüberblick und -Begriffbestimmung
2 Verarbeitungen und TOP Statements identifizieren
3 Wichtige Data Dictionary und Performance Views (V$)
4 Erzeugen von Traces und Execution-Plänen mit unterschiedlichen Methoden
5 Der Oracle Cost-based Optimizer und was ihn beeinflusst:
- Full Table Scan, Index Scan,
- Nested Loop, Hash Join, Sort/Merge Join,
- Bitmap Join, …
6 Oracle-Objekt-Statistiken, Histogramme
7 Einsatz von Bind-Variablen und Hints
8 SQL Profiles, Baselines und Patches
9 Session- und Instance-Parameter, die den Optimizer beeinflussen
10 TOP SQL Statements finden und verstehen
11 Tuning von SQL Statements
12 Oracle-Indizes, Constraints und ROWIDs
13 Constraints und deren Indizes
14 Die richtige Indizierung
15 Do und DON'Ts – Beispiele, wie man es besser nicht macht
16 Locking und Blocking in der Datenbank, Datenbank-Transaktionen verstehen
17 Optional: Oracle-Flashback-Technologie, Monitoring und Parsing-Trace
Die Teilnehmenden erhalten theoretisches Wissen, welches mit vielen praktischen Übungen gefestigt wird.
Dieser Workshop richtet sich an Datenbank-Administrator/innen und Anwendungsentwickler/innen.
Kurs-Environment (und Oracle-Lizenzvoraussetzungen)
- Dieser Workshop basiert auf Oracle Database 23ai Free. Weitere Informationen zum Kursenvironment und der Oracle Lizenzierung findest du hier.
- Als Frontend wird SQL*Plus verwendet. Der Einsatz von Oracle SQL*Developer oder einem der zahlreichen Third Party Tools (Toad, SolarWind etc) ist teilweise möglich, führt aber zu anderen Übungsabläufen.