Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
1
Dipl.-Inform. Obaydah Moallim
DOAG Regionaltreffen Hannover Einstieg in Performance Analysen Dipl.-Inform. Obaydah Moallim
2
Agenda: I. Vorwort II. Wie fange ich an zu tunen?
- Ein Beispiel aus der realen Welt II. Wie fange ich an zu tunen? III. Performance-Analysen - Welche Tools bekomme ich kostenlos mit der Datenbank dazu? - TKPROF - STATSPACK - UTLBSTAT/UTLESTAT
3
IV. Auswertung der Performance-Reports
- Reportsbeispiele - YAPP - OraPerf V. Links
4
Wie gehe ich beim Performance-Tuning vor?
Wo fange ich an? Wie gehe ich weiter?
5
Immer einfach anfangen!!!
Keep things simple!!!
6
Sind die Datenbankkonfigurationen/-Parameter immer noch aktuell?
Wird oft vernachlässigt! Man denkt oft daran, wenn es kracht!
7
Sind die ‚alltäglichen‘ Arbeiten immer ordentlich durchgeführt worden?!
Was sind diese? Welche Vorteile bringen sie mir? ANALYSE, INDEX REBUILD
8
Gibt es in der Datenbank Indexe, die nicht mehr benutzt werden?
Wieso ist das so wichtig? Wie kriege ich raus, welche Indexe nicht mehr benutzt werden?
9
Nicht mehr benutzte Indexe erkennen:
Seit Oracle9i ALTER INDEX <INDEXNAME> MONITORING USAGE; ALTER INDEX <INDEXNAME> NOMONITORING USAGE;
10
V$OBJECT_USAGE INDEX_NAME TABLE_NAME MONITORING USED START_MONITORING
END_MONITORING
11
Starten des Monitoring:
ALTER TABLE SCOTT.EMP MONITORING USAGE; Status überprüfen: SQL> select * from V$OBJECT_USAGE; INDEX_NAME TABLE_NAME MON USED START_MONITORING END_MONITORING EMPIDX EMP YES NO 04/17/ :20:03
12
(3) Die Anwendung einige Zeit laufen lassen.
Status erneut überprüfen: (4) SQL> select * from V$OBJECT_USAGE; INDEX_NAME TABLE_NAME MON USED START_MONITORING END_MONITORING EMPIDX EMP YES YES 04/17/ :20:03
13
Monitoring ausschalten:
(5) ALTER TABLE SCOTT.EMP NOMONITORING USAGE; Status überprüfen: SQL> select * from V$OBJECT_USAGE; INDEX_NAME TABLE_NAME MON USE START_MONITORING END_MONITORING EMPIDX EMP YES YES 04/17/ :20:03 04/17/ :30:03
14
Performance-Analysen
Beim Performance-Tuning muss eine wichtige Tatsache berücksichtigt werden: Performance-Tuning heißt analysieren, tunen und anschließend wieder analysieren und wieder tunen! Es gibt einfach kein Kochbuch für Performance- Tuning!
15
Zur Performance-Analyse stehen ein paar Methoden zur Verfügung:
TKPROF STATSPACK UTLBSTAT/UTLESTAT YAPP
16
TKPROF konvertiert Oracle Trace-Files in eine lesbarere Form.
Voraussetzungen: PLAN_TABLE @ORACLE_HOME/rdbms/admin/utlxplan.sql TIMED_STATISTICS=TRUE ALTER SESSION SET SQL_TRACE = TRUE .. Select ... ALTER SESSION SET SQL_TRACE = FALSE
17
Trace-File in USER_DUMP_DEST Auswerten mit:
TKPROF <trace-file> <output-file>
18
STATSPACK Seit Oracle 8.1.6 Snapshots der Systemstatistiken
Report über den Zeitraum zwischen zwei Snapshots
19
Dokumentation Installation $ORACLE_HOME/rdbms/admin/spdoc.txt
$ORACLE_HOME/rdbms/admin/spcreate.sql User PERFSTAT mit den notwendigen Schema- Objekten und dem STATSPACK-Package.
20
Snapshots automatisieren durch:
Snapshots mit: SQL> exec Statspack.Snap Snapshots automatisieren durch: DB-Job über DBMS_JOB erzeugen mit Hilfe $ORACLE_HOME/rdbms/admin/spauto.sql Report generieren mit: $ORACLE_HOME/rdbms/admin/spreport.sql
21
Vorgänger von Statspack
UTLBSTAT/UTLESTST Vorgänger von Statspack Erster Snapshot mit: UTLBSTAT Abschließender Snapshot und (Text-) Report mit: UTLESTAT
22
STATSPACK VS. UTLBSTAT/UTLESTAT
unterstützt OPS/RAC nicht nicht alle interessanten Statistiken werden gesammelt und ausgewertet nur Instance-Statistiken keine hinterlegten Snapshots in der Datenbank UTLBSTAT/UTLESTAT betrachtet nur die mit einem COMMIT abgeschlossen Transaktionen, als Transaktion Transaktionen = ‚user commits’
23
Wichtige Informationen, die beim UTLBSTAT/UTLESTAT fehlen:
Für SQL-Statements: Buffer gets Disk reads Pars calls Executes Detailisierte latch Statistiken
24
STATSPACK Viel besser als UTLBSTAT/UTLESTAT. Transaktion ist eine Prozesskette, die mit ROLLBACK oder COMMIT endet. Die Anzahl der Transaktionen ist gleich ‚user commits’+’user rollbacks’. Wichtig: Der Vergleich zwischen Staspack und UTLBSTAT/UTLESTAT zeigt Unterschiede in den ‚Raten’ pro Transaktion.
25
Der generierte Report ist ausführlicher als report
Der generierte Report ist ausführlicher als report.txt, ist aber genau so schwer zu lesen OraPerf
26
YAPP YAPP: Yet Another Performance Profiling Method Von Anjo Kolak
Anstelle von ‚Rates‘ z.B. buffer cache hit ratio responce time = service time + wait time Verwendet die Ergebnisse vom STATSPACK Report
27
OraPerf Interpretiert die Performance-Reports und macht sie lesbarer
Kostenlose Anmeldung Kein Software-Download notwendig STATSPACK-Report UTLBSTAT/UTLESTAT-Report Oracle8 bis Oracle10g
34
Links www.oracle-base.com www.adp-gmbh.ch/ora www.dbasupport.com
Ansonsten: technet.oracle.com metalink.oracle.com
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.