SlideShare a Scribd company logo
1 of 37
© OPITZ CONSULTING GmbH 2016 Seite 1Oracle Performance-Analyse mit Bordmitteln
Uwe Küchler
Senior Consultant – Infrastructure Consulting
OPITZ CONSULTING Deutschland GmbH
Eine Auswahl von Werkzeugen
DOAG Community Webcast 2016
8.4.2016
Performance-Analyse mit Bordmitteln
© OPITZ CONSULTING GmbH 2016 Seite 2Oracle Performance-Analyse mit Bordmitteln
Mission
Wir entwickeln gemeinsam mit allen Branchen
Lösungen, die dazu führen, dass sich diese
Organisationen besser entwickeln als ihr
Wettbewerb. Unsere Dienstleistung erfolgt
partnerschaftlich und ist auf eine langjährige
Zusammenarbeit angelegt.
Leistungsangebot
 Business IT Alignment
 Business Information Management
 Business Process Management
 Anwendungsentwicklung
 SOA und System-Integration
 IT-Infrastruktur-Management
Märkte
 Branchenübergreifend
 Über 600 Kunden
29%
Industrie / Versorger /
Telekommunikation
29%
Handel / Logistik /
Dienstleistungen
42%
Öffentliche Auftraggeber /
Banken und Versicherungen /
Vereine und Verbände
Eckdaten
 Gründung 1990
 400 Mitarbeiter
 10 Standorte
© OPITZ CONSULTING GmbH 2016 Seite 3Oracle Performance-Analyse mit Bordmitteln
Zur Person
 Generation C=64
 Seit über 25 Jahren in der IT tätig
 1997-2000 bei Oracle Deutschland
 Seither durchgehend Oracle-Berater, im
DBA- und Entwicklungs-Umfeld, Tutor
 Seit 09/2013 bei OPITZ CONSULTING
 Buch- und Blogautor (oraculix.de)
1975
© OPITZ CONSULTING GmbH 2016 Seite 5Oracle Performance-Analyse mit Bordmitteln
Agenda
1. Analyse eines akuten Problems
a) LongOps
b) ASH für 60 Minuten kostenfrei?
c) (Extended) SQL_TRACE und orasrp
2. Historische Analyse ohne AWR
a) Log Switch Heat Map
b) Statspack und SQL Developer
© OPITZ CONSULTING GmbH 2016 Seite 6Oracle Performance-Analyse mit Bordmitteln
1 Analyse akuter Probleme
© OPITZ CONSULTING GmbH 2016 Seite 7Oracle Performance-Analyse mit Bordmitteln
AMON – ein „top“ für die Oracle-DB
 Fortlaufend entwickelt von Andrej Simon (Oracle Support)
 Für fast alle Unixe/Linuxe verfügbar
 Rein Text-basiert
 Läuft daher in jedem Terminal
 Ideal, wenn nur SSH-Zugriff auf DB-Server möglich ist
 Berechnet regelmäßig differentielle Metriken, ähnlich „top“
 Leichtgewichtig und schnell aufgerufen
 https://sites.google.com/site/freetoolamon/
 https://github.com/Rendanic/SQL-Zauberkasten
© OPITZ CONSULTING GmbH 2016 Seite 8Oracle Performance-Analyse mit Bordmitteln
1a V$SESSION_LONGOPS
© OPITZ CONSULTING GmbH 2016 Seite 9Oracle Performance-Analyse mit Bordmitteln
V$SESSION_LONGOPS
 Zeigt lange laufendes SQL und PL/SQL
 Ab bestimmten Schwellwerten
 PL/SQL: bei entsprechender Instrumentierung immer.
 Nur Operationen, deren Dauer berechnet werden kann
 Full Table Scans
 Index (Fast) Full + Range Scans
 Hash- und Merge Joins
 leider keine Nested Loops  Nachteil bei OLTP
© OPITZ CONSULTING GmbH 2016 Seite 10Oracle Performance-Analyse mit Bordmitteln
V$SESSION_LONGOPS im SQL Developer
© OPITZ CONSULTING GmbH 2016 Seite 11Oracle Performance-Analyse mit Bordmitteln
1b ASH für 60 Minuten kostenfrei
© OPITZ CONSULTING GmbH 2016 Seite 12Oracle Performance-Analyse mit Bordmitteln
ASH für 60 Minuten kostenfrei
 Es gibt Views auf Daten aus ASH, für die kein Diagnostics Pack
gekauft werden muss:
 V$WAITCLASSMETRIC_HISTORY
 Wartezeiten nach Wait Class (Application, Concurrency, Network, …)
 Durchschnitt über 15s und 60s, für eine Stunde historisiert
 V$SYSMETRIC_HISTORY
 System-Metriken (CPU, Executes, Parses, Commits, Reads, …)
 Durchschnitt über 15s und 60s, für eine Stunde historisiert
 Entspricht den Performance-Infos in EM – aber kostenfrei!
© OPITZ CONSULTING GmbH 2016 Seite 13Oracle Performance-Analyse mit Bordmitteln
ASH für 60 Minuten kostenfrei (2)
select * from (
with WC as(
select distinct e.WAIT_CLASS, e.WAIT_CLASS_ID
from v$event_name e
)
select to_char( END_TIME, 'yyyy-mm-dd hh24:mi' ) time
, wc.WAIT_CLASS
, round( AVERAGE_WAITER_COUNT, 2 ) AVERAGE_WAITER_COUNT
from GV$WAITCLASSMETRIC_HISTORY h
, WC
where h.WAIT_CLASS_ID = wc.WAIT_CLASS_ID
and wc.WAIT_CLASS <> 'Idle'
and h.INST_ID = ( select INST_ID from V$INSTANCE )
union all
select to_char( END_TIME, 'yyyy-mm-dd hh24:mi' ) time
, '_CPU' as WAIT_CLASS
, round( sh.VALUE / 100, 2 ) AVERAGE_WAITER_COUNT
from GV$SYSMETRIC_HISTORY sh
where sh.METRIC_ID = 2075 -- "CPU Usage Per Sec" in csec/s
and sh.INST_ID = ( select INST_ID from V$INSTANCE )
)
where rownum < 1000
order by TIME, WAIT_CLASS;
© OPITZ CONSULTING GmbH 2016 Seite 14Oracle Performance-Analyse mit Bordmitteln
Gather Database Stats
© OPITZ CONSULTING GmbH 2016 Seite 15Oracle Performance-Analyse mit Bordmitteln
1c Extended SQL Trace
© OPITZ CONSULTING GmbH 2016 Seite 16Oracle Performance-Analyse mit Bordmitteln
Extended SQL Trace
SQL> ALTER SESSION SET EVENTS '10046 trace name context forever, level 8';
SQL> ALTER SESSION SET EVENTS '10046 trace name context off';
SQL> EXEC DBMS_SYSTEM.set_sql_trace_in_session(sid=>123, serial#=>1234, sql_trace=>TRUE);
SQL> EXEC DBMS_SYSTEM.set_sql_trace_in_session(sid=>123, serial#=>1234, sql_trace=>FALSE);
SQL> EXEC DBMS_SYSTEM.set_ev(si=>123, se=>1234, ev=>10046, le=>8, nm=>' ');
SQL> EXEC DBMS_SYSTEM.set_ev(si=>123, se=>1234, ev=>10046, le=>0, nm=>' ');
© OPITZ CONSULTING GmbH 2016 Seite 17Oracle Performance-Analyse mit Bordmitteln
Extended SQL Trace (2)
 „Howto“ auf oracle-base.com
 Trace File auswerten mit
 Tkprof
 SQL Developer
 orasrp
© OPITZ CONSULTING GmbH 2016 Seite 18Oracle Performance-Analyse mit Bordmitteln
Demo OraSRP
© OPITZ CONSULTING GmbH 2016 Seite 19Oracle Performance-Analyse mit Bordmitteln
2 Historische Analyse ohne AWR
© OPITZ CONSULTING GmbH 2016 Seite 20Oracle Performance-Analyse mit Bordmitteln
Historische Analyse ohne AWR
 ASH und AWR erfordern die Enterprise Edition + Diagnostics Pack
 Lizenzpflichtig sind daher:
 Fast alle DBA_HIST% - Views
 ADDM
 SQL Monitor
  Performance-Funktionen von Cloud Control und DB Console
 Vorsichtsmaßnahme nicht vergessen:
control_management_pack_access = NONE
 In SE bzw in EE ohne Diagnostics Pack also nicht nutzbar!
© OPITZ CONSULTING GmbH 2016 Seite 21Oracle Performance-Analyse mit Bordmitteln
2a Log Switch Heat Map
© OPITZ CONSULTING GmbH 2016 Seite 22Oracle Performance-Analyse mit Bordmitteln
Log Switch Heat Map
 Grundlage: v$log_history
SELECT TO_CHAR(first_time,'YYYY-MM-DD HH24')||'h' t
, COUNT(*)
FROM v$log_history
WHERE trunc(FIRST_TIME) >= trunc(sysdate - 31)
GROUP BY TO_CHAR(first_time,'YYYY-MM-DD HH24');
 …das geht aber schöner! 
© OPITZ CONSULTING GmbH 2016 Seite 23Oracle Performance-Analyse mit Bordmitteln
Log Switch Frequency Map in TOAD
 Database  Diagnose  Log Switch Frequency Map
 Erfordert aber DBA-Modul
© OPITZ CONSULTING GmbH 2016 Seite 24Oracle Performance-Analyse mit Bordmitteln
Log Switch Heat Map in SQL Developer
© OPITZ CONSULTING GmbH 2016 Seite 25Oracle Performance-Analyse mit Bordmitteln
2b STATSPACK
© OPITZ CONSULTING GmbH 2016 Seite 26Oracle Performance-Analyse mit Bordmitteln
Statspack lebt!
 Bordmittel seit Oracle 8
 Vorläufer des AWR, basierend auf Schnappschüssen von Wait
Events.
 Ist auch in Oracle 12c immer noch verfügbar!
 Anfängliche Startschwierigkeiten in 12c behoben.
 Kleiner Bug in 12.1.0.2 bei einem unbekannten, aber nützlichen Feature (s.u.)
 Größerer Bug: Idle Events werden in Top Events gelistet.
 Kombiniert mit Oracle SQL Developer Reports sogar graphisch
und kostenfrei.
© OPITZ CONSULTING GmbH 2016 Seite 27Oracle Performance-Analyse mit Bordmitteln
STATSPACK 12c: Installation
 Installation in 12c genauso wie bisher:
 Tablespace für Schema PERFSTAT einrichten.
 SQL> @spcreate
 Snapshot-Job einrichten;
Empfehlung: Um Ausführungspläne zu archivieren, höchsten Level einstellen
(statspack.snap(7))
 Löschjob einrichten (Aufruf von statspack.purge(<days>)).
 Achtung bei RAC: Es wird ein Snapshot-Job pro Instance
benötigt.
 Skripte, um dies alles zu automatisieren, gibt es auf Github:
https://github.com/Rendanic/SQL-Zauberkasten/tree/master/sql/statspack/spcreate
© OPITZ CONSULTING GmbH 2016 Seite 28Oracle Performance-Analyse mit Bordmitteln
STATSPACK 12c: Reports
 Wie bei AWR wird ein Bericht aus den Differenzen zweier
Snapshots generiert.
 $ORACLE_HOME/rdbms/admin/spreport
© OPITZ CONSULTING GmbH 2016 Seite 29Oracle Performance-Analyse mit Bordmitteln
STATSPACK und DBMS_XPLAN
 Historisierte Ausführungspläne können mit dem bekannten
DBMS_XPLAN formatiert werden:
select * from table(DBMS_XPLAN.DISPLAY(
TABLE_NAME => 'perfstat.stats$sql_plan'
, STATEMENT_ID => null
, FORMAT => 'ALL -predicate -note'
, FILTER_PREDS => 'plan_hash_value = '|| &phv
));
© OPITZ CONSULTING GmbH 2016 Seite 30Oracle Performance-Analyse mit Bordmitteln
STATSPACK und DBMS_XPLAN (2)
 Bug in 12.1:
DBMS_XPLAN erwartet eine Spalte, die in der Statspack-Tabelle
derzeit noch fehlt.
 Workaround: Spalte (unsichtbar) manuell anlegen.
ALTER TABLE perfstat.stats$sql_plan ADD timestamp
INVISIBLE AS (cast(NULL AS DATE));
© OPITZ CONSULTING GmbH 2016 Seite 31Oracle Performance-Analyse mit Bordmitteln
Statspack-Analyse mit SQL Developer Reports
 Beispiel: Average Active Sessions (AAS)
 Wesentlicher Indikator für Belastung des RDBMS.
 Vergleichbar mit „Load“ in Unix/Linux top.
 Guter Einstieg für ein Drill-Down nach Top Waits und Top SQL
 Nicht in SQL Developer mitgeliefert; bei GitHub zu finden
 http://tinyurl.com/sqldevReports
 http://oraculix.com/2015/03/24/visualizing-statspack-average-active-sessions-in-sql-
developer/
© OPITZ CONSULTING GmbH 2016 Seite 32Oracle Performance-Analyse mit Bordmitteln
Problem: Mehr aktive
Sessions als log. CPUs
(hier: Hyperthreads)
 Überlastung des Servers
 Lange Antwortzeiten
© OPITZ CONSULTING GmbH 2016 Seite 33Oracle Performance-Analyse mit Bordmitteln
Worauf haben die Sessions
in diesem Zeitraum am
längsten gewartet?
Idle Events korrekt sortiert
© OPITZ CONSULTING GmbH 2016 Seite 34Oracle Performance-Analyse mit Bordmitteln
© OPITZ CONSULTING GmbH 2016 Seite 35Oracle Performance-Analyse mit Bordmitteln
Fazit
 Eine komfortable Performance-Analyse geht auch
 Ohne teure Zusatzlizenzen
 Ohne Tools von Drittherstellern
 Statspack funktioniert auch noch in 12c und erlaubt eine fundierte
Top-Down-Analyse.
 Die Reports des SQL Developer sind auch für DBAs interessant!
 Es gibt eine Menge freier Tools von Oracle und anderen
 SQLT, sqld360, orasrp, …
© OPITZ CONSULTING GmbH 2016 Seite 37Oracle Performance-Analyse mit Bordmitteln
Kontakt
Uwe Küchler
Managing Consultant
OPITZ CONSULTING GmbH
Kirchstr. 6 | 51647 Gummersbach
Tel. +49 (6172) 662 60-1515
uwe.kuechler@opitz-consulting.com
youtube.com/opitzconsulting
@OC_WIRE
slideshare.net/opitzconsulting
xing.com/net/opitzconsulting
© OPITZ CONSULTING GmbH 2016 Seite 38Oracle Performance-Analyse mit Bordmitteln
Links + Literatur
Li
3
6.941
© OPITZ CONSULTING GmbH 2016 Seite 39Oracle Performance-Analyse mit Bordmitteln
Links + Literatur
 SQL Developer Performance Reports: https://github.com/oraculix/sql-developer-tools
 ORASRP – Profiler für Extended SQL Trace Files: http://oracledba.ru/orasrp/
 SQLT und SQLHC: Präsentation von der DOAG 2013
 SQLd360, SQL diagnostics collection made faster
 SQL_TRACE/Event 10046 Trace File Analyzer (trca): MOS Doc ID 224270.1
 Trace File Analyzer (TFA): MOS Doc ID 1513912.1
 Trace Assistant (trcasst): Database Net Services Admin Guide
 Welche Views und APIs sind Lizenzpflichtig:
http://docs.oracle.com/cd/E11882_01/license.112/e47877/options.htm#DBLIC165

More Related Content

What's hot

Visualisierung von fachlichen Informationen mit Oracle ADF
Visualisierung von fachlichen Informationen mit Oracle ADFVisualisierung von fachlichen Informationen mit Oracle ADF
Visualisierung von fachlichen Informationen mit Oracle ADFUlrich Gerkmann-Bartels
 
ORACLE Lizenzierung - Die größten Fallen in der Praxis
ORACLE Lizenzierung - Die größten Fallen in der PraxisORACLE Lizenzierung - Die größten Fallen in der Praxis
ORACLE Lizenzierung - Die größten Fallen in der PraxisOPITZ CONSULTING Deutschland
 
Parkraumbewirtschaftung mit Oracle ADF Mobile?
Parkraumbewirtschaftung mit Oracle ADF Mobile?Parkraumbewirtschaftung mit Oracle ADF Mobile?
Parkraumbewirtschaftung mit Oracle ADF Mobile?enpit GmbH & Co. KG
 
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der Praxis
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der PraxisOC|Webcast: Oracle Lizenzierung - Die größten Fallen in der Praxis
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der PraxisOPITZ CONSULTING Deutschland
 
Wer die (Client) Wahl hat, hat die Qual
Wer die (Client) Wahl hat, hat die QualWer die (Client) Wahl hat, hat die Qual
Wer die (Client) Wahl hat, hat die QualBelsoft
 
IBM Connections 6 und was ist Pink?
IBM Connections 6 und was ist Pink?IBM Connections 6 und was ist Pink?
IBM Connections 6 und was ist Pink?Belsoft
 

What's hot (11)

Die 5 mythen-der-forms-modernisierung
Die 5 mythen-der-forms-modernisierungDie 5 mythen-der-forms-modernisierung
Die 5 mythen-der-forms-modernisierung
 
Visualisierung von fachlichen Informationen mit Oracle ADF
Visualisierung von fachlichen Informationen mit Oracle ADFVisualisierung von fachlichen Informationen mit Oracle ADF
Visualisierung von fachlichen Informationen mit Oracle ADF
 
CI und OTPC in ADF Projekten
CI und OTPC in ADF ProjektenCI und OTPC in ADF Projekten
CI und OTPC in ADF Projekten
 
Best Practices 
Java und JVM in Containern
Best Practices 
Java und JVM in ContainernBest Practices 
Java und JVM in Containern
Best Practices 
Java und JVM in Containern
 
Gestern OWB, heute ODI
Gestern OWB, heute ODIGestern OWB, heute ODI
Gestern OWB, heute ODI
 
Oracle WebLogic for DevOps
Oracle WebLogic for DevOpsOracle WebLogic for DevOps
Oracle WebLogic for DevOps
 
ORACLE Lizenzierung - Die größten Fallen in der Praxis
ORACLE Lizenzierung - Die größten Fallen in der PraxisORACLE Lizenzierung - Die größten Fallen in der Praxis
ORACLE Lizenzierung - Die größten Fallen in der Praxis
 
Parkraumbewirtschaftung mit Oracle ADF Mobile?
Parkraumbewirtschaftung mit Oracle ADF Mobile?Parkraumbewirtschaftung mit Oracle ADF Mobile?
Parkraumbewirtschaftung mit Oracle ADF Mobile?
 
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der Praxis
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der PraxisOC|Webcast: Oracle Lizenzierung - Die größten Fallen in der Praxis
OC|Webcast: Oracle Lizenzierung - Die größten Fallen in der Praxis
 
Wer die (Client) Wahl hat, hat die Qual
Wer die (Client) Wahl hat, hat die QualWer die (Client) Wahl hat, hat die Qual
Wer die (Client) Wahl hat, hat die Qual
 
IBM Connections 6 und was ist Pink?
IBM Connections 6 und was ist Pink?IBM Connections 6 und was ist Pink?
IBM Connections 6 und was ist Pink?
 

Viewers also liked

MAXXYS Firmenpräsentation
MAXXYS FirmenpräsentationMAXXYS Firmenpräsentation
MAXXYS FirmenpräsentationMAXXYS AG
 
Management of the system architecture in large-scale projects
Management of the system architecture in large-scale projectsManagement of the system architecture in large-scale projects
Management of the system architecture in large-scale projectsCapgemini
 
Looping Enterprise – Die neue Art Feedback zu erhalten
Looping Enterprise – Die neue Art Feedback zu erhaltenLooping Enterprise – Die neue Art Feedback zu erhalten
Looping Enterprise – Die neue Art Feedback zu erhaltenMarc Steffen
 
Digitale Verwaltung: Wann akzeptieren die Bürger die digitale Verwaltung und ...
Digitale Verwaltung: Wann akzeptieren die Bürger die digitale Verwaltung und ...Digitale Verwaltung: Wann akzeptieren die Bürger die digitale Verwaltung und ...
Digitale Verwaltung: Wann akzeptieren die Bürger die digitale Verwaltung und ...Initiative D21
 
MDM Best Practices - Konzeption. Entstehung. Betrieb und typische Probleme
MDM Best Practices - Konzeption. Entstehung. Betrieb und typische Probleme MDM Best Practices - Konzeption. Entstehung. Betrieb und typische Probleme
MDM Best Practices - Konzeption. Entstehung. Betrieb und typische Probleme OPITZ CONSULTING Deutschland
 
IT Service Management - Microsoft Operations Framework
IT Service Management - Microsoft Operations FrameworkIT Service Management - Microsoft Operations Framework
IT Service Management - Microsoft Operations FrameworkHicham Boulahboub
 

Viewers also liked (9)

Dataport-stage
Dataport-stageDataport-stage
Dataport-stage
 
MAXXYS Firmenpräsentation
MAXXYS FirmenpräsentationMAXXYS Firmenpräsentation
MAXXYS Firmenpräsentation
 
Management of the system architecture in large-scale projects
Management of the system architecture in large-scale projectsManagement of the system architecture in large-scale projects
Management of the system architecture in large-scale projects
 
Looping Enterprise – Die neue Art Feedback zu erhalten
Looping Enterprise – Die neue Art Feedback zu erhaltenLooping Enterprise – Die neue Art Feedback zu erhalten
Looping Enterprise – Die neue Art Feedback zu erhalten
 
Digitale Verwaltung: Wann akzeptieren die Bürger die digitale Verwaltung und ...
Digitale Verwaltung: Wann akzeptieren die Bürger die digitale Verwaltung und ...Digitale Verwaltung: Wann akzeptieren die Bürger die digitale Verwaltung und ...
Digitale Verwaltung: Wann akzeptieren die Bürger die digitale Verwaltung und ...
 
MDM Best Practices - Konzeption. Entstehung. Betrieb und typische Probleme
MDM Best Practices - Konzeption. Entstehung. Betrieb und typische Probleme MDM Best Practices - Konzeption. Entstehung. Betrieb und typische Probleme
MDM Best Practices - Konzeption. Entstehung. Betrieb und typische Probleme
 
Was die IT von der Luftfahrt lernen kann
Was die IT von der Luftfahrt lernen kannWas die IT von der Luftfahrt lernen kann
Was die IT von der Luftfahrt lernen kann
 
IT Service Management - Microsoft Operations Framework
IT Service Management - Microsoft Operations FrameworkIT Service Management - Microsoft Operations Framework
IT Service Management - Microsoft Operations Framework
 
WP_Smart_Wahnsinn_Capgemini (1)
WP_Smart_Wahnsinn_Capgemini (1)WP_Smart_Wahnsinn_Capgemini (1)
WP_Smart_Wahnsinn_Capgemini (1)
 

Similar to Performance-Analyse mit Bordmitteln

Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln OPITZ CONSULTING Deutschland
 
PureSQL APEX Connect
PureSQL APEX ConnectPureSQL APEX Connect
PureSQL APEX ConnectTrivadis
 
Pure SQL for batch processing
Pure SQL for batch processingPure SQL for batch processing
Pure SQL for batch processingAndrej Pashchenko
 
Ausgewählte PL/SQL Packages (3)
Ausgewählte PL/SQL Packages (3)Ausgewählte PL/SQL Packages (3)
Ausgewählte PL/SQL Packages (3)Ulrike Schwinn
 
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...Informatik Aktuell
 
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Ulrike Schwinn
 
Architektur Insights - Big Data, NoSQL
Architektur Insights - Big Data, NoSQLArchitektur Insights - Big Data, NoSQL
Architektur Insights - Big Data, NoSQLClaudio Altamura
 
Forms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and OperationsForms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and OperationsTorsten Kleiber
 
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?Trivadis
 
OSMC 2012 | Performance graphing mit inGraph by Eric Lippmann
OSMC 2012 | Performance graphing mit inGraph by Eric LippmannOSMC 2012 | Performance graphing mit inGraph by Eric Lippmann
OSMC 2012 | Performance graphing mit inGraph by Eric LippmannNETWAYS
 
Automatisierung im DWH - Sich das Leben erleichern mit dem ODI
Automatisierung im DWH - Sich das Leben erleichern mit dem ODIAutomatisierung im DWH - Sich das Leben erleichern mit dem ODI
Automatisierung im DWH - Sich das Leben erleichern mit dem ODIOPITZ CONSULTING Deutschland
 
MySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sMySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sFromDual GmbH
 
B&IT Kurzpräsentation - Unternehmen, Lösungen und Produkte
B&IT Kurzpräsentation - Unternehmen, Lösungen und ProdukteB&IT Kurzpräsentation - Unternehmen, Lösungen und Produkte
B&IT Kurzpräsentation - Unternehmen, Lösungen und ProdukteWolfgang Hornung
 
Leveraging the Power of Solr with Spark
Leveraging the Power of Solr with SparkLeveraging the Power of Solr with Spark
Leveraging the Power of Solr with SparkQAware GmbH
 
Lasttest auf Zuruf CloudTest on Demand webinar presentation
Lasttest auf Zuruf CloudTest on Demand webinar presentationLasttest auf Zuruf CloudTest on Demand webinar presentation
Lasttest auf Zuruf CloudTest on Demand webinar presentationSOASTA
 
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...OPITZ CONSULTING Deutschland
 
Make it simple! Mit automatisierten workflows aus der Cloud
Make it simple! Mit automatisierten workflows aus der CloudMake it simple! Mit automatisierten workflows aus der Cloud
Make it simple! Mit automatisierten workflows aus der Cloudproficom
 
Dr. Andreas Lattner - Aufsetzen skalierbarer Prognose- und Analysedienste mit...
Dr. Andreas Lattner - Aufsetzen skalierbarer Prognose- und Analysedienste mit...Dr. Andreas Lattner - Aufsetzen skalierbarer Prognose- und Analysedienste mit...
Dr. Andreas Lattner - Aufsetzen skalierbarer Prognose- und Analysedienste mit...AboutYouGmbH
 

Similar to Performance-Analyse mit Bordmitteln (20)

Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln Oracle Performance-Analyse mit frei verfügbaren Mitteln
Oracle Performance-Analyse mit frei verfügbaren Mitteln
 
PureSQL APEX Connect
PureSQL APEX ConnectPureSQL APEX Connect
PureSQL APEX Connect
 
Pure SQL for batch processing
Pure SQL for batch processingPure SQL for batch processing
Pure SQL for batch processing
 
Ausgewählte PL/SQL Packages (3)
Ausgewählte PL/SQL Packages (3)Ausgewählte PL/SQL Packages (3)
Ausgewählte PL/SQL Packages (3)
 
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
Norbert Rieger – IT-Tage 2015 – Optimierung der Performance bei Oracle-Datenb...
 
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
Überblick: 18c und Autonomous Data Warehouse Cloud (ADWC)
 
Architektur Insights - Big Data, NoSQL
Architektur Insights - Big Data, NoSQLArchitektur Insights - Big Data, NoSQL
Architektur Insights - Big Data, NoSQL
 
Forms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and OperationsForms and Reports 12c - Processes and Automation in Development and Operations
Forms and Reports 12c - Processes and Automation in Development and Operations
 
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
Oracle12c threaded execution - Ressourcen sparen zum Nulltarif?!?
 
OSMC 2012 | Performance graphing mit inGraph by Eric Lippmann
OSMC 2012 | Performance graphing mit inGraph by Eric LippmannOSMC 2012 | Performance graphing mit inGraph by Eric Lippmann
OSMC 2012 | Performance graphing mit inGraph by Eric Lippmann
 
Automatisierung im DWH - Sich das Leben erleichern mit dem ODI
Automatisierung im DWH - Sich das Leben erleichern mit dem ODIAutomatisierung im DWH - Sich das Leben erleichern mit dem ODI
Automatisierung im DWH - Sich das Leben erleichern mit dem ODI
 
MySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA'sMySQL Performance Tuning für Oracle-DBA's
MySQL Performance Tuning für Oracle-DBA's
 
B&IT Kurzpräsentation - Unternehmen, Lösungen und Produkte
B&IT Kurzpräsentation - Unternehmen, Lösungen und ProdukteB&IT Kurzpräsentation - Unternehmen, Lösungen und Produkte
B&IT Kurzpräsentation - Unternehmen, Lösungen und Produkte
 
Leveraging the Power of Solr with Spark
Leveraging the Power of Solr with SparkLeveraging the Power of Solr with Spark
Leveraging the Power of Solr with Spark
 
Lasttest auf Zuruf CloudTest on Demand webinar presentation
Lasttest auf Zuruf CloudTest on Demand webinar presentationLasttest auf Zuruf CloudTest on Demand webinar presentation
Lasttest auf Zuruf CloudTest on Demand webinar presentation
 
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...
OC|Webcast: Schnell und clever in die AWS Cloud – Migrationsszenarien und Han...
 
Make it simple! Mit automatisierten workflows aus der Cloud
Make it simple! Mit automatisierten workflows aus der CloudMake it simple! Mit automatisierten workflows aus der Cloud
Make it simple! Mit automatisierten workflows aus der Cloud
 
NETCONF & YANG
NETCONF & YANGNETCONF & YANG
NETCONF & YANG
 
Dr. Andreas Lattner - Aufsetzen skalierbarer Prognose- und Analysedienste mit...
Dr. Andreas Lattner - Aufsetzen skalierbarer Prognose- und Analysedienste mit...Dr. Andreas Lattner - Aufsetzen skalierbarer Prognose- und Analysedienste mit...
Dr. Andreas Lattner - Aufsetzen skalierbarer Prognose- und Analysedienste mit...
 
Continuous Delivery in ADF Projekten
Continuous Delivery in ADF ProjektenContinuous Delivery in ADF Projekten
Continuous Delivery in ADF Projekten
 

More from OPITZ CONSULTING Deutschland

Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"OPITZ CONSULTING Deutschland
 
OC|Webcast: Oracle Lizenzierung - Virtualisierung und Cloud
OC|Webcast: Oracle Lizenzierung - Virtualisierung und CloudOC|Webcast: Oracle Lizenzierung - Virtualisierung und Cloud
OC|Webcast: Oracle Lizenzierung - Virtualisierung und CloudOPITZ CONSULTING Deutschland
 
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!OPITZ CONSULTING Deutschland
 
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...OPITZ CONSULTING Deutschland
 
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?OPITZ CONSULTING Deutschland
 
OC|Weekly Talk - Digitales Coaching & Smart Sparring
OC|Weekly Talk - Digitales Coaching & Smart Sparring OC|Weekly Talk - Digitales Coaching & Smart Sparring
OC|Weekly Talk - Digitales Coaching & Smart Sparring OPITZ CONSULTING Deutschland
 
Effiziente Betriebsoptimierung durch Cloud Nutzung
Effiziente Betriebsoptimierung durch Cloud NutzungEffiziente Betriebsoptimierung durch Cloud Nutzung
Effiziente Betriebsoptimierung durch Cloud NutzungOPITZ CONSULTING Deutschland
 
OC|Weekly Talk - Mitarbeiterführung in Zeiten von Social Distance
OC|Weekly Talk - Mitarbeiterführung in Zeiten von Social DistanceOC|Weekly Talk - Mitarbeiterführung in Zeiten von Social Distance
OC|Weekly Talk - Mitarbeiterführung in Zeiten von Social DistanceOPITZ CONSULTING Deutschland
 

More from OPITZ CONSULTING Deutschland (20)

OC|Webcast: Grundlagen der Oracle Lizenzierung
OC|Webcast: Grundlagen der Oracle LizenzierungOC|Webcast: Grundlagen der Oracle Lizenzierung
OC|Webcast: Grundlagen der Oracle Lizenzierung
 
OC|Webcast "Java heute" vom 28.09.2021
OC|Webcast "Java heute" vom 28.09.2021OC|Webcast "Java heute" vom 28.09.2021
OC|Webcast "Java heute" vom 28.09.2021
 
OC|Webcast "Java heute" vom 24.08.2021
OC|Webcast "Java heute" vom 24.08.2021OC|Webcast "Java heute" vom 24.08.2021
OC|Webcast "Java heute" vom 24.08.2021
 
OC|Webcast "Daten wirklich nutzen"
OC|Webcast "Daten wirklich nutzen"OC|Webcast "Daten wirklich nutzen"
OC|Webcast "Daten wirklich nutzen"
 
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
 
OC|Webcast "Willkommen in der Cloud!"
OC|Webcast "Willkommen in der Cloud!"OC|Webcast "Willkommen in der Cloud!"
OC|Webcast "Willkommen in der Cloud!"
 
OC|Webcast "Die neue Welt der Virtualisierung"
OC|Webcast "Die neue Welt der Virtualisierung"OC|Webcast "Die neue Welt der Virtualisierung"
OC|Webcast "Die neue Welt der Virtualisierung"
 
10 Thesen zur professionellen Softwareentwicklung
10 Thesen zur professionellen Softwareentwicklung10 Thesen zur professionellen Softwareentwicklung
10 Thesen zur professionellen Softwareentwicklung
 
OC|Webcast: Oracle Lizenzierung - Lizenznews 2021
OC|Webcast: Oracle Lizenzierung - Lizenznews 2021OC|Webcast: Oracle Lizenzierung - Lizenznews 2021
OC|Webcast: Oracle Lizenzierung - Lizenznews 2021
 
OC|Webcast: Oracle Lizenzierung - Virtualisierung und Cloud
OC|Webcast: Oracle Lizenzierung - Virtualisierung und CloudOC|Webcast: Oracle Lizenzierung - Virtualisierung und Cloud
OC|Webcast: Oracle Lizenzierung - Virtualisierung und Cloud
 
OC|Webcast: Grundlagen der Oracle-Lizenzierung
OC|Webcast: Grundlagen der Oracle-LizenzierungOC|Webcast: Grundlagen der Oracle-Lizenzierung
OC|Webcast: Grundlagen der Oracle-Lizenzierung
 
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!
OC|Weekly Talk: Inspect’n’Adapt – Make Change come true!
 
OC|Weekly Talk The Power of DevOps…
OC|Weekly Talk  The Power of DevOps…OC|Weekly Talk  The Power of DevOps…
OC|Weekly Talk The Power of DevOps…
 
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...
OC|Weekly Talk: "Das müsste man mal digitalisieren" - Mit Low-Code schnell zu...
 
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?
OC|Weekly Talk: Service Management – Was hat sich durch Corona geändert?
 
OC|Weekly Talk - Digitales Coaching & Smart Sparring
OC|Weekly Talk - Digitales Coaching & Smart Sparring OC|Weekly Talk - Digitales Coaching & Smart Sparring
OC|Weekly Talk - Digitales Coaching & Smart Sparring
 
OC|Weekly Talk - Beratung remote
OC|Weekly Talk - Beratung remoteOC|Weekly Talk - Beratung remote
OC|Weekly Talk - Beratung remote
 
Effiziente Betriebsoptimierung durch Cloud Nutzung
Effiziente Betriebsoptimierung durch Cloud NutzungEffiziente Betriebsoptimierung durch Cloud Nutzung
Effiziente Betriebsoptimierung durch Cloud Nutzung
 
OC|Weekly Talk - Mitarbeiterführung in Zeiten von Social Distance
OC|Weekly Talk - Mitarbeiterführung in Zeiten von Social DistanceOC|Weekly Talk - Mitarbeiterführung in Zeiten von Social Distance
OC|Weekly Talk - Mitarbeiterführung in Zeiten von Social Distance
 
OC|Weekly Talk Remote Design Thinking
OC|Weekly Talk Remote Design ThinkingOC|Weekly Talk Remote Design Thinking
OC|Weekly Talk Remote Design Thinking
 

Performance-Analyse mit Bordmitteln

  • 1. © OPITZ CONSULTING GmbH 2016 Seite 1Oracle Performance-Analyse mit Bordmitteln Uwe Küchler Senior Consultant – Infrastructure Consulting OPITZ CONSULTING Deutschland GmbH Eine Auswahl von Werkzeugen DOAG Community Webcast 2016 8.4.2016 Performance-Analyse mit Bordmitteln
  • 2. © OPITZ CONSULTING GmbH 2016 Seite 2Oracle Performance-Analyse mit Bordmitteln Mission Wir entwickeln gemeinsam mit allen Branchen Lösungen, die dazu führen, dass sich diese Organisationen besser entwickeln als ihr Wettbewerb. Unsere Dienstleistung erfolgt partnerschaftlich und ist auf eine langjährige Zusammenarbeit angelegt. Leistungsangebot  Business IT Alignment  Business Information Management  Business Process Management  Anwendungsentwicklung  SOA und System-Integration  IT-Infrastruktur-Management Märkte  Branchenübergreifend  Über 600 Kunden 29% Industrie / Versorger / Telekommunikation 29% Handel / Logistik / Dienstleistungen 42% Öffentliche Auftraggeber / Banken und Versicherungen / Vereine und Verbände Eckdaten  Gründung 1990  400 Mitarbeiter  10 Standorte
  • 3. © OPITZ CONSULTING GmbH 2016 Seite 3Oracle Performance-Analyse mit Bordmitteln Zur Person  Generation C=64  Seit über 25 Jahren in der IT tätig  1997-2000 bei Oracle Deutschland  Seither durchgehend Oracle-Berater, im DBA- und Entwicklungs-Umfeld, Tutor  Seit 09/2013 bei OPITZ CONSULTING  Buch- und Blogautor (oraculix.de) 1975
  • 4. © OPITZ CONSULTING GmbH 2016 Seite 5Oracle Performance-Analyse mit Bordmitteln Agenda 1. Analyse eines akuten Problems a) LongOps b) ASH für 60 Minuten kostenfrei? c) (Extended) SQL_TRACE und orasrp 2. Historische Analyse ohne AWR a) Log Switch Heat Map b) Statspack und SQL Developer
  • 5. © OPITZ CONSULTING GmbH 2016 Seite 6Oracle Performance-Analyse mit Bordmitteln 1 Analyse akuter Probleme
  • 6. © OPITZ CONSULTING GmbH 2016 Seite 7Oracle Performance-Analyse mit Bordmitteln AMON – ein „top“ für die Oracle-DB  Fortlaufend entwickelt von Andrej Simon (Oracle Support)  Für fast alle Unixe/Linuxe verfügbar  Rein Text-basiert  Läuft daher in jedem Terminal  Ideal, wenn nur SSH-Zugriff auf DB-Server möglich ist  Berechnet regelmäßig differentielle Metriken, ähnlich „top“  Leichtgewichtig und schnell aufgerufen  https://sites.google.com/site/freetoolamon/  https://github.com/Rendanic/SQL-Zauberkasten
  • 7. © OPITZ CONSULTING GmbH 2016 Seite 8Oracle Performance-Analyse mit Bordmitteln 1a V$SESSION_LONGOPS
  • 8. © OPITZ CONSULTING GmbH 2016 Seite 9Oracle Performance-Analyse mit Bordmitteln V$SESSION_LONGOPS  Zeigt lange laufendes SQL und PL/SQL  Ab bestimmten Schwellwerten  PL/SQL: bei entsprechender Instrumentierung immer.  Nur Operationen, deren Dauer berechnet werden kann  Full Table Scans  Index (Fast) Full + Range Scans  Hash- und Merge Joins  leider keine Nested Loops  Nachteil bei OLTP
  • 9. © OPITZ CONSULTING GmbH 2016 Seite 10Oracle Performance-Analyse mit Bordmitteln V$SESSION_LONGOPS im SQL Developer
  • 10. © OPITZ CONSULTING GmbH 2016 Seite 11Oracle Performance-Analyse mit Bordmitteln 1b ASH für 60 Minuten kostenfrei
  • 11. © OPITZ CONSULTING GmbH 2016 Seite 12Oracle Performance-Analyse mit Bordmitteln ASH für 60 Minuten kostenfrei  Es gibt Views auf Daten aus ASH, für die kein Diagnostics Pack gekauft werden muss:  V$WAITCLASSMETRIC_HISTORY  Wartezeiten nach Wait Class (Application, Concurrency, Network, …)  Durchschnitt über 15s und 60s, für eine Stunde historisiert  V$SYSMETRIC_HISTORY  System-Metriken (CPU, Executes, Parses, Commits, Reads, …)  Durchschnitt über 15s und 60s, für eine Stunde historisiert  Entspricht den Performance-Infos in EM – aber kostenfrei!
  • 12. © OPITZ CONSULTING GmbH 2016 Seite 13Oracle Performance-Analyse mit Bordmitteln ASH für 60 Minuten kostenfrei (2) select * from ( with WC as( select distinct e.WAIT_CLASS, e.WAIT_CLASS_ID from v$event_name e ) select to_char( END_TIME, 'yyyy-mm-dd hh24:mi' ) time , wc.WAIT_CLASS , round( AVERAGE_WAITER_COUNT, 2 ) AVERAGE_WAITER_COUNT from GV$WAITCLASSMETRIC_HISTORY h , WC where h.WAIT_CLASS_ID = wc.WAIT_CLASS_ID and wc.WAIT_CLASS <> 'Idle' and h.INST_ID = ( select INST_ID from V$INSTANCE ) union all select to_char( END_TIME, 'yyyy-mm-dd hh24:mi' ) time , '_CPU' as WAIT_CLASS , round( sh.VALUE / 100, 2 ) AVERAGE_WAITER_COUNT from GV$SYSMETRIC_HISTORY sh where sh.METRIC_ID = 2075 -- "CPU Usage Per Sec" in csec/s and sh.INST_ID = ( select INST_ID from V$INSTANCE ) ) where rownum < 1000 order by TIME, WAIT_CLASS;
  • 13. © OPITZ CONSULTING GmbH 2016 Seite 14Oracle Performance-Analyse mit Bordmitteln Gather Database Stats
  • 14. © OPITZ CONSULTING GmbH 2016 Seite 15Oracle Performance-Analyse mit Bordmitteln 1c Extended SQL Trace
  • 15. © OPITZ CONSULTING GmbH 2016 Seite 16Oracle Performance-Analyse mit Bordmitteln Extended SQL Trace SQL> ALTER SESSION SET EVENTS '10046 trace name context forever, level 8'; SQL> ALTER SESSION SET EVENTS '10046 trace name context off'; SQL> EXEC DBMS_SYSTEM.set_sql_trace_in_session(sid=>123, serial#=>1234, sql_trace=>TRUE); SQL> EXEC DBMS_SYSTEM.set_sql_trace_in_session(sid=>123, serial#=>1234, sql_trace=>FALSE); SQL> EXEC DBMS_SYSTEM.set_ev(si=>123, se=>1234, ev=>10046, le=>8, nm=>' '); SQL> EXEC DBMS_SYSTEM.set_ev(si=>123, se=>1234, ev=>10046, le=>0, nm=>' ');
  • 16. © OPITZ CONSULTING GmbH 2016 Seite 17Oracle Performance-Analyse mit Bordmitteln Extended SQL Trace (2)  „Howto“ auf oracle-base.com  Trace File auswerten mit  Tkprof  SQL Developer  orasrp
  • 17. © OPITZ CONSULTING GmbH 2016 Seite 18Oracle Performance-Analyse mit Bordmitteln Demo OraSRP
  • 18. © OPITZ CONSULTING GmbH 2016 Seite 19Oracle Performance-Analyse mit Bordmitteln 2 Historische Analyse ohne AWR
  • 19. © OPITZ CONSULTING GmbH 2016 Seite 20Oracle Performance-Analyse mit Bordmitteln Historische Analyse ohne AWR  ASH und AWR erfordern die Enterprise Edition + Diagnostics Pack  Lizenzpflichtig sind daher:  Fast alle DBA_HIST% - Views  ADDM  SQL Monitor   Performance-Funktionen von Cloud Control und DB Console  Vorsichtsmaßnahme nicht vergessen: control_management_pack_access = NONE  In SE bzw in EE ohne Diagnostics Pack also nicht nutzbar!
  • 20. © OPITZ CONSULTING GmbH 2016 Seite 21Oracle Performance-Analyse mit Bordmitteln 2a Log Switch Heat Map
  • 21. © OPITZ CONSULTING GmbH 2016 Seite 22Oracle Performance-Analyse mit Bordmitteln Log Switch Heat Map  Grundlage: v$log_history SELECT TO_CHAR(first_time,'YYYY-MM-DD HH24')||'h' t , COUNT(*) FROM v$log_history WHERE trunc(FIRST_TIME) >= trunc(sysdate - 31) GROUP BY TO_CHAR(first_time,'YYYY-MM-DD HH24');  …das geht aber schöner! 
  • 22. © OPITZ CONSULTING GmbH 2016 Seite 23Oracle Performance-Analyse mit Bordmitteln Log Switch Frequency Map in TOAD  Database  Diagnose  Log Switch Frequency Map  Erfordert aber DBA-Modul
  • 23. © OPITZ CONSULTING GmbH 2016 Seite 24Oracle Performance-Analyse mit Bordmitteln Log Switch Heat Map in SQL Developer
  • 24. © OPITZ CONSULTING GmbH 2016 Seite 25Oracle Performance-Analyse mit Bordmitteln 2b STATSPACK
  • 25. © OPITZ CONSULTING GmbH 2016 Seite 26Oracle Performance-Analyse mit Bordmitteln Statspack lebt!  Bordmittel seit Oracle 8  Vorläufer des AWR, basierend auf Schnappschüssen von Wait Events.  Ist auch in Oracle 12c immer noch verfügbar!  Anfängliche Startschwierigkeiten in 12c behoben.  Kleiner Bug in 12.1.0.2 bei einem unbekannten, aber nützlichen Feature (s.u.)  Größerer Bug: Idle Events werden in Top Events gelistet.  Kombiniert mit Oracle SQL Developer Reports sogar graphisch und kostenfrei.
  • 26. © OPITZ CONSULTING GmbH 2016 Seite 27Oracle Performance-Analyse mit Bordmitteln STATSPACK 12c: Installation  Installation in 12c genauso wie bisher:  Tablespace für Schema PERFSTAT einrichten.  SQL> @spcreate  Snapshot-Job einrichten; Empfehlung: Um Ausführungspläne zu archivieren, höchsten Level einstellen (statspack.snap(7))  Löschjob einrichten (Aufruf von statspack.purge(<days>)).  Achtung bei RAC: Es wird ein Snapshot-Job pro Instance benötigt.  Skripte, um dies alles zu automatisieren, gibt es auf Github: https://github.com/Rendanic/SQL-Zauberkasten/tree/master/sql/statspack/spcreate
  • 27. © OPITZ CONSULTING GmbH 2016 Seite 28Oracle Performance-Analyse mit Bordmitteln STATSPACK 12c: Reports  Wie bei AWR wird ein Bericht aus den Differenzen zweier Snapshots generiert.  $ORACLE_HOME/rdbms/admin/spreport
  • 28. © OPITZ CONSULTING GmbH 2016 Seite 29Oracle Performance-Analyse mit Bordmitteln STATSPACK und DBMS_XPLAN  Historisierte Ausführungspläne können mit dem bekannten DBMS_XPLAN formatiert werden: select * from table(DBMS_XPLAN.DISPLAY( TABLE_NAME => 'perfstat.stats$sql_plan' , STATEMENT_ID => null , FORMAT => 'ALL -predicate -note' , FILTER_PREDS => 'plan_hash_value = '|| &phv ));
  • 29. © OPITZ CONSULTING GmbH 2016 Seite 30Oracle Performance-Analyse mit Bordmitteln STATSPACK und DBMS_XPLAN (2)  Bug in 12.1: DBMS_XPLAN erwartet eine Spalte, die in der Statspack-Tabelle derzeit noch fehlt.  Workaround: Spalte (unsichtbar) manuell anlegen. ALTER TABLE perfstat.stats$sql_plan ADD timestamp INVISIBLE AS (cast(NULL AS DATE));
  • 30. © OPITZ CONSULTING GmbH 2016 Seite 31Oracle Performance-Analyse mit Bordmitteln Statspack-Analyse mit SQL Developer Reports  Beispiel: Average Active Sessions (AAS)  Wesentlicher Indikator für Belastung des RDBMS.  Vergleichbar mit „Load“ in Unix/Linux top.  Guter Einstieg für ein Drill-Down nach Top Waits und Top SQL  Nicht in SQL Developer mitgeliefert; bei GitHub zu finden  http://tinyurl.com/sqldevReports  http://oraculix.com/2015/03/24/visualizing-statspack-average-active-sessions-in-sql- developer/
  • 31. © OPITZ CONSULTING GmbH 2016 Seite 32Oracle Performance-Analyse mit Bordmitteln Problem: Mehr aktive Sessions als log. CPUs (hier: Hyperthreads)  Überlastung des Servers  Lange Antwortzeiten
  • 32. © OPITZ CONSULTING GmbH 2016 Seite 33Oracle Performance-Analyse mit Bordmitteln Worauf haben die Sessions in diesem Zeitraum am längsten gewartet? Idle Events korrekt sortiert
  • 33. © OPITZ CONSULTING GmbH 2016 Seite 34Oracle Performance-Analyse mit Bordmitteln
  • 34. © OPITZ CONSULTING GmbH 2016 Seite 35Oracle Performance-Analyse mit Bordmitteln Fazit  Eine komfortable Performance-Analyse geht auch  Ohne teure Zusatzlizenzen  Ohne Tools von Drittherstellern  Statspack funktioniert auch noch in 12c und erlaubt eine fundierte Top-Down-Analyse.  Die Reports des SQL Developer sind auch für DBAs interessant!  Es gibt eine Menge freier Tools von Oracle und anderen  SQLT, sqld360, orasrp, …
  • 35. © OPITZ CONSULTING GmbH 2016 Seite 37Oracle Performance-Analyse mit Bordmitteln Kontakt Uwe Küchler Managing Consultant OPITZ CONSULTING GmbH Kirchstr. 6 | 51647 Gummersbach Tel. +49 (6172) 662 60-1515 uwe.kuechler@opitz-consulting.com youtube.com/opitzconsulting @OC_WIRE slideshare.net/opitzconsulting xing.com/net/opitzconsulting
  • 36. © OPITZ CONSULTING GmbH 2016 Seite 38Oracle Performance-Analyse mit Bordmitteln Links + Literatur Li 3 6.941
  • 37. © OPITZ CONSULTING GmbH 2016 Seite 39Oracle Performance-Analyse mit Bordmitteln Links + Literatur  SQL Developer Performance Reports: https://github.com/oraculix/sql-developer-tools  ORASRP – Profiler für Extended SQL Trace Files: http://oracledba.ru/orasrp/  SQLT und SQLHC: Präsentation von der DOAG 2013  SQLd360, SQL diagnostics collection made faster  SQL_TRACE/Event 10046 Trace File Analyzer (trca): MOS Doc ID 224270.1  Trace File Analyzer (TFA): MOS Doc ID 1513912.1  Trace Assistant (trcasst): Database Net Services Admin Guide  Welche Views und APIs sind Lizenzpflichtig: http://docs.oracle.com/cd/E11882_01/license.112/e47877/options.htm#DBLIC165

Editor's Notes

  1. Hier ist zu sehen, wie in Oracle 12.1.0.2 Idle Events in den Top 5 auftauchen und damit die „echten“ Top Events verdrängen. Es gibt aber noch viel mehr Möglichkeiten als nur Reports zu lesen…
  2. Hier ist zu sehen, wie in Oracle 12.1.0.2 Idle Events in den Top 5 auftauchen und damit die „echten“ Top Events verdrängen. Es gibt aber noch viel mehr Möglichkeiten als nur Reports zu lesen…
  3. Hier ist zu sehen, wie in Oracle 12.1.0.2 Idle Events in den Top 5 auftauchen und damit die „echten“ Top Events verdrängen. Es gibt aber noch viel mehr Möglichkeiten als nur Reports zu lesen…