Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Dipl.-Inform. Obaydah Moallim

Ähnliche Präsentationen


Präsentation zum Thema: "Dipl.-Inform. Obaydah Moallim"—  Präsentation transkript:

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

28

29

30

31

32

33

34 Links www.oracle-base.com www.adp-gmbh.ch/ora www.dbasupport.com
Ansonsten: technet.oracle.com metalink.oracle.com


Herunterladen ppt "Dipl.-Inform. Obaydah Moallim"

Ähnliche Präsentationen


Google-Anzeigen