Database Reference
In-Depth Information
17.2
Ermittlung der problematischen SQL-Anweisungen bei den
vergangenen Performanz-Problemen
Wenn ein Performanz-Problem in der Vergangenheit liegt, kann man für die Ermittlung
der problematischen SQL-Anweisungen die folgenden 3 Datenquellen benutzen, die Ora-
cle dafür zur Verfügung stellt:
• Statspack-Repository,
• AutomaticWorkflowRepository(AWR),
• diehistorischenViewsfürdieaktivenSessions
In diesem Abschnitt präsentiere ich einige effektive Methoden für alle 3 Datenquellen.
17.2.1
Ermittlung der Top-SQL-Anweisungen aus dem
Statspack-Repository
Für diesen Abschnitt habe ich den Test aus dem Abschn. 17.1 wieder gebraucht. Ich habe
also 4 Sessions gestartet, welche einen Full Table Scan ausgeführt haben. Zugleich habe ich
einige Snapshots des Statspack-Repository in kleinen zeitlichen Intervallen generiert. Die
jeweilige Auswertung der CPU-Auslastung auf der Betriebssystemebene ist in einer grafi-
schen Form präsentiert (Abb.  17.1 ).
Die Kurve für die Statistik AVG_BUSY_TIME hat einen absteigenden Verlauf, weil ich
nach und nach meine Test-Sessions beendet habe.
Jetzt möchte ich zeigen, wie man SQL-Anweisungen ermitteln kann, welche diese hohe
CPU-Auslastung verursacht haben.
Peter: „ Reicht das Statspack-Report dafür nicht aus?
Leonid: „ Für diesen einfachen Fall hätte das Statspack-Report ausgereicht. Wenn das Pro-
blem komplizierter ist und man eine feine Analyse der SQL-Anweisungen benötigt, würde ich
lieber das Skript sp_sqltus102.sql einsetzen.
Dieses Skript ermöglicht die Ermittlung der Top-SQL-Anweisungen aus dem Statspack-
Repository für einen gewissen Zeitraum und hat die folgenden Besonderheiten:
• esistmöglich,dieTop-SQL-AnweisungennachvielenKriterienzuermitteln.AlsKrite-
rien kann man die meisten im Statspack-Repository vorhandenen Laufzeit- oder War-
testatistiken wählen. Möglich ist es auch, die Top-SQL-Anweisungen nach einer Lauf-
zeit- bzw. Wartestatistik pro Ausführung zu ermitteln,
• diejeweiligenAusführungsplänewerdenauchausgegeben,
• inderAusgabefindetmanalleLaufzeit-undWartestatistikenzuderjeweiligenSQL-
Anweisung. Dies ermöglicht einen guten Überblick über die jeweiligen Ausführungen
der SQL-Anweisung,
Search WWH ::




Custom Search