Was bringt Extended SQL-Tracing für das Performance-Tuning?

Größe: px
Ab Seite anzeigen:

Download "Was bringt Extended SQL-Tracing für das Performance-Tuning?"

Transkript

1 Was bringt Extended SQL-Tracing für das Performance-Tuning? Dr. Frank Haney Consultant Jena Schlüsselworte: Oracle 9i Database, Performance Tuning, SQL-Tracing Zusammenfassung Performance Tuning in komplexen Infrastrukturen hat es schwer, die Ursachen der diagnostizierten Probleme zu ermitteln. Auf der Basis systemweit gesammelter Statistiken wird traditionell versucht, durch Schrauben an diesen oder jenen Parametern eine Lösung zu finden. Die häufig wenig befriedigenden Resultate dieser Aktivitäten werden schließlich zum Anlaß genommen, in neue Hardware zu investieren. Konfrontiert mit einer solchen Situation wurde die von Cary Millsap und Jeff Holt vorgeschlagene Methode eingesetzt. Diese beruht auf der Untersuchung des Antwortverhaltens mittels Extended SQL-Tracing. Im folgenden wird diese Methode vorgestellt und ein Erfahrungsbericht gegeben. Dieser zeigt, daß Extended SQL-Tracing mehr ist als eine Variante spezifischen SQL-Tunings, sondern einen ganzheitlichen Ansatz ermöglicht. Einleitung Grenzen traditioneller Tuningmethoden Performance Tuning basiert auf einer ganzen Reihe von Techniken, die meist in der Literarur nebeneinanderstehend behandelt 1 und in der Praxis parallel eingesetzt werden. Da ist das Sammeln systemweiter Statistiken z.b. mit Hilfe von Statspack-Reports oder der Einsatz der dynamischem Performance Views ( v$-views ), mit denen versucht wird, sich Informationen über einzelne Tuning-Bereiche (Cache-Nutzung, I/O-Statistik, Locks und Latches etc.) zu verschaffen. SQL-Tracing wiederum dient dazu, den effizientesten Ausführungsplan für die SQL-Anweisungen einer Applikation zu finden. Natürlich lassen sich auf diese Weise beim Tuning Erfolge erzielen. In der praktischen Arbeit zeigt sich aber eine ganze Reihe von Defiziten: Es gibt im eigentlichen Sinne keine zielführende Methode, nur ein Konglomerat von Tips und Techniken, die gerade in komplexen Infrastrukturen oft nicht zum gewünschten Resultat führen. Das liegt auch daran, daß es zu viele unterschiedliche Datenquellen zur System-Performance gibt. Erfolgskriterium ist oft nicht die Antwortzeit, sondern es werden verschiedene, für entscheidend gehaltene Benchmarks, Trefferquoten etc. herangezogen. Das Tuning setzt 1 Vgl. dazu die einigermaßen beliebige Abfolge der Kapitel in [Niemiec, 2003].

2 dann auch nicht zielgerichtet bei den Ereignissen an, die den größten Einfluß auf die Antwortzeit haben. Es ist schwierig festzulegen, wo mit dem Tuning begonnen und wo aufgehört werden soll. Ursache dafür ist der fehlende Determinismus des herkömmlichen Tuning, was sich in einer schwachen Korrelation zwischen den Tuningmaßnahmen und ihren Wirkungen zeigt. Mittels Trial and Error wird mehr oder weniger begründet versucht, einen Durchbruch zu erzielen! Es gibt Probleme bei der Eingrenzung der Nutzeraktionen, die die wesentlichen Laufzeitprobleme verursachen. Das betrifft sowohl die Festlegung des zu betrachtenden Zeitraums als auch die Zuordnung der gewonnenen Daten zu den Nutzeraktionen. Die meisten Quellen stellen nur systemweite Daten zur Verfügung. Es muß häufig von Summen auf Details geschlossen werden, z.b. bei Nutzung von Statspack und Performance Views. Vielen dieser Views fehlt eine Spalte zu Identifizierung der die Performanceeinbußen verursachenden Session. Dazu kommen noch zwei Probleme: Um die Implikationen eines Vorgangs für die Performance adäquat erfassen zu können, müßte man die Abfrage auf die View mit hoher Frequenz immer wieder absetzen. Außerdem sind die mit nacheinander ausgeführten Abfragen auf eine Auswahl dieser Views gewonnenen Daten zwangsläufig nicht konsistent. 2 Eine Lösung dieser Probleme verspricht das von Millsap und Holt [Millsap/Holt, 2003] propagierte Extended SQL-Tracing. Wie funktioniert Extended SQL-Tracing? Das Extended SQL-Tuning schreibt in die Trace Files zusätzlich zum normalen SQL- Tracing Informationen über die Warteereignisse (Waits) und die Bindevariablen (Binds). Worin der Gewinn dieser Mehrinformation für das Tuning besteht, werden wir vor allem bei der Behandlung des Fallbeispiels sehen. Hier soll zunächst ganz kurz darauf eingegangen werden, wie das Extended SQL-Tuning ermöglicht wird. Extended SQL-Tracing funktioniert grundsätzlich mit Hilfe von Oracle s Pseudo-Error Debugging Event Voraussetzung ist, daß für die zu überwachende Session oder systemweit TIMED_STATISTICS = TRUE gesetzt ist. Für die eigene Sitzung wird das Tracing mit folgender Anweisung gestartet: alter session set events '10046 trace name context forever, level <level>'; <level> steht für den Umfang der zu sammelnden Informationen: Level Bedeutung 0 Tracing ausschalten 1 Entspricht SQL_TRACE = TRUE 4 Level 1 + BINDS 8 Level 1 + WAITS 12 Level 1 + BINDS + WAITS 2 3 In Oracle 10g scheinen diese Probleme wenigstens teilweise behoben zu sein. Mehr Views enthalten eine SID-Spalte, und es wird eine Historie der session-bezogenen Warteereignisse geschrieben. Die Zuordnung der Ereignisse zu den Calls ist nach wie vor nicht gegeben. Vgl. [Nanda, 2004] Eine Einführung zu den Diagnostic Events gibt Metalink Note

3 Häufig steht man aber vor dem Problem, daß man in der zu überwachenden Session das Tracing nicht einschalten kann, weil es sich z.b. um eine Forms-Applikation ohne eine Möglichkeit der Direkteingabe von SQL handelt. Dann muß das Tracing von einer anderen Session aus gestartet und gestoppt werden. Dazu gibt es verschiedene Möglichkeiten 4 : DBMS_SUPPORT.START_TRACE_IN_SESSION(<sid>, <serial#>, waits=>true, binds=>true); benutzeraktionen DBMS_SUPPORT.STOP_TRACE_IN_SESSION(<sid>, <serial#>); DBMS_SYSTEM.SET_EV( <sid>, serial#>, 10046, <level>); benutzeraktionen DBMS_SYSTEM.SET_EV( <sid>, serial#>, 10046, 0); ORADEBUG setorapid <pid> ORADEBUG event trace name context forever, level 12 benutzeraktionen ORADEBUG event trace name context off ORADEBUG close_trace Resultat sind recht große Trace Files, die ausgewertet werden müssen. Das kann hier im einzelnen aus Platzgründen nicht nachvollzogen werden. Nur einige wesentliche Elemente sollen genannt werden. Neben Informationen über die Session, die ausgeführte Anwendung und den Zeitraum des Tracing enthalten die Files u.a. folgende Zeilen: Zeilen PARSING IN CURSOR PARSE, EXECUTE, FETCH WAIT BINDS STAT XTEND enthalten Cursor Identifikation Database Calls Warteereignisse Ersetzung der Bindevariablen Ausführungsplan (Row Source) Transaktionsende Es gibt ein paar Prinzipien, die beim Lesen der Trace Files unbedingt zu beachten sind. Da ist zunächst das, was sich deutsch Vorwärtsaggregierung nennen läßt (Forward Attributation bei Millsap/Holt): Die Trace-Zeile eines Calls erscheint, wenn der Call abgeschlossen ist, d.h. alle zu diesem Call gehörenden, z.b. auf Warteereignisse zurückgehenden Zeilen werden vorher geschrieben. Die Summe der Zeiten dieser Ereignisse ist Bestandteil der in der Trace-Zeile des Calls für diesen ausgewiesenen Dauer. Zu beachten ist ferner die rekursive Tiefe eines Cursor. Die Summe der Zeiten aller untergeordneten Cursor (Child Cursor) ist Bestandteil der Dauer des übergeordneten Parse Call (Parent Cursor). Die Trace-Zeilen der Child Cursor stehen im Trace File vor der Parse- Zeile des Parent Cursor. (Vorwärtsaggregierung) Bei den Warteereignissen muß man die Waits innerhalb der Calls von den Waits zwischen den Calls unterscheiden. Das ist wichtig, weil die Dauer von Waits zwischen den Calls nicht in die Trace-Zeile des Call aggregiert wird. Hier gilt die Vorwärtsaggregierung nicht! So ist 4 Zu DBMS_SUPPORT vgl. in Metalink Note und zu ORADEBUG Note

4 z.b. db file scattered read ein Warteereignis innerhalb des Call. Der Call kann vor Ende des Ereignisses nicht abgeschlossen werden! Anders steht es z.b mit SQL*Net more data to client. Das ist ein Wait zwischen den Calls, der nächste Call kann erst beginnen, wenn das Ereignis beendet ist. Des weiteren müssen Idle von Nonidle Waits unterschieden werden. Die beiden vorgenannten Waits sind Nonidle Waits. Ein typischer Idle Wait ist SQL*Net message from client. Das System hat nichts zu tun und wartet auf Rückmeldungen des Client (eventuell auf Nutzereingaben). Inwiefern die Idle Waits für das Tuning relevant sind, werden wir noch sehen. Die Vorteile des Extended SQL-Tuning liegen auf der Hand. Wir haben damit vielleicht nicht den Universalschlüssel für alle Tuningprobleme, aber immerhin wenigstens ansatzweise so etwas wie eine Methode. Die Einbeziehung der Waits und Binds in die Trace Files ermöglicht einen ganzheitlicher Ansatz für das Tuning. Der mit Extended SQL-Tuning erstellte Trace File ist eben nicht nur der Ausgangspunkt zum Finden des besten Ausführungsplans für die SQL. Dadurch daß die Trace Files spezifisch für die als problematisch ermittelte Nutzeraktion gesammelt werden können, kann genau festgestellt werden, welches Element des Servers, die CPU, der Speicher, das I/O-Subsystem etc. wie zur Antwortzeit des konkreten Vorgangs beiträgt. Damit ist auch der größte Vorzug der Methode genannt, die konsequente Orientierung auf die Antwortzeit, also das, was die Nutzer allein interessiert. Der Beitrag jedes einzelnen Database Call zur Antwortzeit läßt sich ermitteln, und dadurch kann man entscheiden, was kostengünstiger ist, die Zahl der Calls oder die Wartezeit je Call zu reduzieren. Damit ist die Methode deterministisch: Die Auswirkungen von Tuningmaßnahmen auf die Performance sind vorhersagbar. Für die Bewertung der Resultate gibt es nur zwei Kriterien: Antwortzeit und Kosten. Dazu kommt, daß Meßfehler eher beherrsch- bzw. eliminierbar sind als bei anderen Tuningtechniken. Außerdem werden die Performance-Implikationen der eigentlich unzugänglichen Nutzeraktionen von Fremdapplikationen transparent. Eine Reihe von Problemen soll nicht verschwiegen werden. Oracle stellt seinen Kunden die Funktionalität des Extended SQL-Tracing dankenswerterweise kostenfrei zur Verfügung, leistet aber bislang keinen Support für Tracing im Level > 1. 5 Deswegen wird die Methode in der Oracle-Dokumentation und den meisten Tuning-Büchern schlichtweg nicht behandelt, ja häufig nicht einmal erwähnt. Dazu kommt, daß es Mißverständnisse über die Wirkungsweise selbst bei Experten gibt. Es ist eben wenig bekannt, daß es sich um ein Verfahren handelt, das Tuning weit über die SQL-Optimierung im engeren Sinne hinaus erlaubt. Ein weiteres Manko ist, daß es keine Tools zum adäquaten Sammeln der Daten gibt. Man muß sich also selber darum kümmern herauszufinden, welche Nutzeraktion in welchem Zeitfenster überwacht werden muß, und dann das Tracing zur Vermeidung von Meßfehlern rechzeitig starten und auch wieder stoppen. Andernfalls enthält der Trace File Zeiten, die gar nicht zur eigentlich interessanten Aktion gehören und deshalb nicht zuordenbar sind, oder es fehlen die entscheidenden Zeilen (Vorwärtsaggregierung)! 5 Mit Oracle 10g und dem Package DBMS_MONITOR sollte das Geschichte sein. Die Prozedur SESSION_TRACE_ENABLE ermöglicht Extended SQL-Tracing, wobei standardmäßig WAITS = TRUE und BIND = FALSE gestellt ist. Vgl. [Floss, 2004]

5 Das Verfahren ist nicht auf Oracle 9i und höher beschränkt, sondern war schon in früheren Versionen verfügbar. Man muß aber die unterschiedlichen Maßeinheiten (Zentisekunden in 8i vs. Mikrosekunden in 9i) beachten, besonders beim Einsatz von Tools wie TKPROF. Damit ist das Thema der Tools zur Auswertung angesprochen. Dafür gibt es keinen Standard. Oracle stellt über Metalink (Vgl. Note ) den Trace Analyzer für und höher zur Verfügung (Autor: Carlos Sierra), leistet aber auch dafür keinen offiziellen Support. 6 Der Trace Analyzer macht eine Reihe nützlicher Aussagen, hier nur eine Auswahl: Die totale für den User verwendete Zeit (CPU, Elapsed, Nonidle Waits, Idle Waits) Die gleichen Angaben für die TOP 5 SQL-Anweisungen Zusammenfassung der Waits (Nonidle, Idle) Die 5 meistbenutzten Böcke Zusammenfassung von CPU, Elapsed und Waits, Physical Reads, Logical Raeds, Library Cache Misses je Cursor Viele Detailinformationen über den einzelnen Cursor TKPROF dagegen gibt keine totale Antwortzeit einer Session. Außerdem werden Ereignisse zwischen den Calls nicht richtig interpretiert und die Zuordnung der rekursiven SQL ist schwierig. 7 Ein Fallbeispiel Unlängst bestand Gelegenheit, die hier vorgestellte Methode in einem sehr komplexen Umfeld einzusetzen: Die Benutzer greifen von ihren Terminals über Terminalserver auf eine Oracle-Forms-Applikation zu, mit der sowohl Online als auch Batch Processing in einer 200 GB großen, von einem Linux-Server bereitgestellten Datenbank (Oracle 8i) realisiert werden. Die Forms liegen auf einem Application Server. Zunehmend kam es zu massiven Beschwerden der Nutzer über die Performance und damit auch zu dramatisch sinkender Akzeptanz der Applikation und zu massiver Kritik an den Leistungen meines Auftraggebers, der diese für seine Kunden zur Verfügung stellt. Kompliziert wird die Situation dadurch, daß Datenmodell und Forms-Applikation von einem Drittanbieter geliefert werden, also de facto für Tuning-Eingriffe nicht zur Disposition stehen. Die Auswertung entsprechender Statspack-Reports zeigte bei den wichtigsten Kenngrößen keine Auffälligkeiten. Insbesondere zeigten sich weder Probleme mit der Speichernutzung noch Engpässe beim Lesen oder Schreiben. Interessant war bloß die große Zahl und Summe der Idle Waits, die aber nach allgemeiner Auffassung auch offizieller Literatur für das Performance Tuning irrelevant sind: idle events can be ignored. [Niemiec, 2003, p. 580] Dem ist allerdings schwer zu widersprechen, solange man sich auf der Ebene systemweiter summarischer Statistiken bewegt. Im nächsten Schritt wurden fünf der für die Akzeptanz der Applikation kritischsten Funktionen ausgewählt und mit Extended SQL-Tracing überwacht. Dazu wurde eine Testimplementierung der Applikation unter Oracle 9i Release 2 genutzt, da wegen des auslaufenden Supports für 8i die Migration nach 9i ohnehin auf der Agenda stand. Im 6 7 Millsap und Holt verweisen zwar auf die Defizite von TKPROF und propagieren den Einsatz des von ihnen entwickelten und kommerziell verbreiteten Hotsos Profiler, erwähnen aber den kostenlosen Trace Analyzer nur kurz! Niemiec hat für Oracle 9i unrecht, wenn er behauptet, daß TKPROF die Waits nicht berücksichtigt. [Niemiec, 2003, p. 234f.]

6 folgenden sollen die Resultate für eine der überwachten Funktionen diskutiert werden. Dabei handelt es sich um die Erstellung von Belegen, Artikel werden aus einer Liste ausgewählt und in einem Beleg des jeweiligen Auftrags zusammengestellt. Im konkreten Vorgang wurden 2 Artikel aus einer Liste mit 6378 Einträgen für den Beleg ausgewählt. Da das Tracing nicht aus der Forms-Applikation selber gestartet werden konnte, mußte das mit ORADEBUG aus einer anderen Sitzung geschehen. Dabei war darauf zu achten, das Tracing möglichst zeitnah zum Starten bzw. Schließen der Form ein- und auszuschalten und Leerlauf durch verzögerte Nutzereingaben auszuschließen. Die externe Beobachtung ergab eine Zeit von reichlich 3 Minuten für den ganzen Vorgang, wobei diese überwiegend das Laden der Artikelliste betraf. Währenddessen war eine Nutzerinteraktion nicht möglich. Die Auswertung 8 des Trace Files mit dem Trace Analyzer ermöglicht, ein Profil der Ressourcenverwendung für die Session aufzustellen, sowohl bezüglich der Anzahl und Dauer der Calls als auch die Warteereignisse betreffend: OVERALL TOTALS PER CALL FOR ALL NON-RECURSIVE STATEMENTS FOR USER 505 call count cpu elapsed disk query current rows misses Parse Execute Fetch total WAITS FOR ALL NON-RECURSIVE STATEMENTS FOR USER 505 Event waited on Times Max. Wait Total Blocks Accessed db file sequential read (single block scan) db file scattered read (multiblock full scan) SQL*Net more data to client SQL*Net message from client (idle) SQL*Net message to client (idle) SQL*Net more data from client (idle) total Die Ausgabe des Trace Analyzer enthält aber nicht nur zusammenfassende Daten für den durch das Tracing erfaßten Zeitraum der Session, sondern auch Informationen darüber, welche Cursor überwiegend für die Antwortzeit verantwortlich sind (Top 5). In unserem Fall konzentriert sich der Ressourcenverbrauch auf einen Cursor: cursor id user id command type count cpu top elapsed top nonidle waits top idle waits select Dieser Cursor steht sowohl bei der CPU-Zeit als auch bei den Idle Waits an erster Stelle. Die Antwortzeit wird in entscheidendem Maße durch letztere bestimmt. Eine Steigerung der CPU- Leistung durch ein Hardware Upgrade brächte nur eine unwesentliche Verbesserung des Antwortverhaltens. Im Detail sieht das dann für den Cursor so aus: top 8 Die folgenden Listings wurden aus Gründen der Lesbarkeit um Einträge gekürzt, die für unser Problem nicht hilfreich sind, und sinnwahrend formatiert. Die Maßeinheiten in den mit dem Trace Analyzer vorgenommenen Auswertungen ist Sekunden.

7 call count cpu elapsed disk query current rows misses Parse Execute Fetch total Es ergeben sich Fragen: Warum muß der Cursor für die Auswahl von 2 Listeneinträgen viermal geparsed und ausgeführt werden? Warum werden die 6378 Zeilen viermal in insgesamt 1276 Fetches (20 Zeilen pro Fetch) an den Client zurückgegeben? Die Warteereignisse verteilen sich für den Cursor folgendermaßen: Event waited on Times Max. Wait Total Blocks Accessed db file sequential read (single block scan) db file scattered read (multiblock full scan) SQL*Net more data to client SQL*Net message from client (idle) SQL*Net message to client (idle) total Hier fällt sofort ins Auge, daß SQL*Net message from client den größten Beitrag zur Antwortzeit leistet. 9 Ohne Extended SQL-Tracing hätten wir das nie erfahren. Da wir durch die Art und Weise des Tracing ausschließen können, daß diese Zeit einfach durch Warten auf Benutzereingaben zustande kommt, ist der Nachweis erbracht, daß man sich beim Tuning gegebenenfalls sehr wohl um Idle Waits kümmern muß! Interessant ist die Übereinstimmung der Zahl der Waits mit der Zahl der Fetches. Im originalen Trace File sieht das für eine Cursor-Ausführung so aus 10 : PARSE #84:c=0,e=278,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=4 EXEC #84:c=0,e=671,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=4 WAIT #84: nam='sql*net message to client' ela= 5 WAIT #84: nam='sql*net more data to client' ela= 59 FETCH #84:c= ,e= ,p=0,cr=26046,cu=0,mis=0,r=20,dep=0,og=4 WAIT #84: nam='sql*net message from client' ela= 937 WAIT #84: nam='sql*net message to client' ela= 3 WAIT #84: nam='sql*net more data to client' ela= 26 FETCH #84:c=0,e=281,p=0,cr=0,cu=0,mis=0,r=20,dep=0,og=4 WAIT #84: nam='sql*net message from client' ela= 651 WAIT #84: nam='sql*net message to client' ela= 4 WAIT #84: nam='sql*net more data to client' ela= 35 FETCH #84:c=0,e=306,p=0,cr=0,cu=0,mis=0,r=20,dep=0,og=4 WAIT #84: nam='sql*net message from client' ela= WAIT #84: nam='sql*net message to client' ela= 3 WAIT #84: nam='sql*net more data to client' ela= 33 FETCH #84:c=0,e=293,p=0,cr=0,cu=0,mis=0,r=20,dep=0,og=4 WAIT #84: nam='sql*net message from client' ela= WAIT #84: nam='sql*net message to client' ela= Auch der Trace Analyzer setzt die Idle Waits ans Ende der Liste und unterstreicht so deren vorgeblich marginale Bedeutung für das Tuning Maßeinheit ist hier Mikrosekunden. Gezeigt werden auch nur die ersten 5 von 319 Fetches.

8 WAIT #84: nam='sql*net more data to client' ela= 44 FETCH #84:c=0,e=314,p=0,cr=0,cu=0,mis=0,r=20,dep=0,og=4 Der Server wartet also vor jedem Fetch Call bis zu 0,3 s auf SQL*Net message from client. Wenn man diese Zeiten für alle vier Ausführungen des Cursor addiert, erhält man die reichlich 200 s und weiß, wo die Antwortzeit bleibt. Man weiß aber noch nicht, welches Element der komplexen Infrastruktur dafür verantwortlich ist. Klar ist nur, daß dafür nicht der Nutzer verantwortlich ist, und daß die Dauer der Einzelereignisse bei einem vielfachen der normalen LAN-Latenz liegt. In einem Auschlußverfahren wurde nun versucht, die Quelle für die langen Waits zu finden. Dazu war schrittweise die Komplexität der Infrastruktur zu reduzieren, also wurde auf den Terminal Server verzichtet, dann der Application Server umgangen, indem die Forms lokal auf den Client-Rechner geholt wurden etc. Alle diese Maßnahmen haben nur zu geringfügigen Verschiebungen bezüglich der Waits und ihrer Verteilung auf die Fetches, aber nicht zu einer durchgreifenden Verbesserung der Antwortzeit geführt. Dann wurde eine Standalone-Form entwickelt und eingesetzt. Das Resultat war verblüffend: cursor id user id command type count cpu top elapsed top nonidle waits top idle waits select call count cpu elapsed disk query current rows misses Parse Execute Fetch total Event waited on Times Max. Wait Total Blocks Accessed SQL*Net more data to client SQL*Net message from client (idle) SQL*Net message to client (idle) total Die Zahl der Fetch Calls ist nach wie vor sehr hoch, die einzelne Warteereignisse SQL*Net message from client liegen aber im Millisekundenbereich, so daß sie sich zu nicht mehr als 0,63 s summieren. Schließlich wurden aus dem Trace File die SQL herauskopiert, die Bindevariablen manuell durch die Literale ersetzt und diese Anweisung, ein Nested Loop Join über 5 Tabellen, in SQL*Plus ausgeführt. Die Summe der Warteereignisse reduziert sich noch einmal auf 0,44 s. Ursache dafür ist in erster Linie die Reduzierung der Fetch Calls auf nur noch 26. An dieser Stelle konnte der Schluß gezogen werden, daß weder die Hardware des Server, noch die komplexe Infrastruktur das Antwortverhalten entscheidend bestimmen. Wie die letzten Versuche zeigen, sind auch weder Oracle Forms noch die Ausführung der SQL an sich für die von den Nutzern beklagten Performanceeinbußen verantwortlich. Hier war der Hersteller der Applikation gefragt. Diesem ist es schließlich gelungen, im speziellen Fall die Antwortzeit um zwei Größenordnungen auf ca. 2 s zu verbessern. Die Applikation ist an top

9 dieser Stelle also kaum langsamer als die direkte Ausführung der SQL in SQL*Plus. Ein besseres Resultat unserer Bemühungen war eigentlich kaum erhoffen. Fazit Aus dem zuletzt diskutierten Fallbeispiel ergibt sich ein allgemeiner Ablauf für den Einsatz des Extended SQL-Tracing: 1. Ermittlung der performance-kritischsten (teuersten) Nutzeraktionen der Anwendung Dabei ist es wichtig, sich auf wenige, für den Geschäftsgang besonders entscheidende Vorgänge zu konzentrieren. 2. Überwachtes Tracing der Nutzer-Session in einem durch den performance-kritischen Vorgang bestimmten Zeitfenster, um adäquate Daten im Trace File zu erhalten 3. Erstellung eines Ressourcenprofils der Session Was (CPU, Warteereignisse) trägt mit welchem Beitrag zur Antwortzeit bei? 4. Bestimmung der kostenintensivsten SQL-Anweisungen (Cursor) in der überwachten Session 5. Welche Calls dieser SQL tragen wie und womit (CPU, Warteereignisse etc.) zur Antwortzeit bei? 6. Danach läßt sich entscheiden, wodurch der größte Tuning-Effekt zu erwarten ist. (Reduktion der Calls, Beschleunigung der Calls durch Verkürzung oder Eliminierung von Waits) 7. Wie kann das erreicht werden, durch Änderungen an der Applikation oder neue Hardware? 8. Am Ende sollte die Entscheidung für die kostengünstigste Variante stehen. Ganz deutlich zeigen sich die Stärken des Extended SQL-Tracing. Durch die konsequente Konzentration auf das Antwortverhalten kritischer Nutzeraktionen gelingt es auch in komplexen Infrastrukturen, das Problem in endlicher Zeit auf den Punkt zu bringen. Allerdings muß die von Millsap/Holt mehrfach geäußerte Behauptung, daß das Tuning praktisch Minutensache sei, wenn man erst einmal korrekt erstellte Trace Files habe, etwas relativiert werden. Das geschilderte Ausschlußverfahren macht schon einigen Aufwand, zumal es häufig nicht ausreicht, allein die mit einem Tool vorgenommenen Auswertungen zu interpretieren, sondern man muß die Trace Files auch unformatiert zu Rate ziehen. Zusätzlich muß berücksichtigt werden, daß es im Beispiel nur um eine Funktion in einer von den Nutzern als wenig performant eingeschätzten Applikation ging. Zwei Vorteile des Verfahrens sind hoffentlich deutlich geworden: 1. Es handelt nicht einfach um erweitertes SQL-Tuning, also die Interpretation und den Vergleich der Kosten verschiedener Ausführungspläne, sondern um einen ganzheitlichen Ansatz. 2. Durch Extended SQL-Tracing wird für das Performance Tuning wirklich so etwas wie eine nachprüfbare und in Grenzen deterministische Methode eröffnet. Außerdem gibt es für den mit Performanceproblemen Befaßten einen gar nicht hoch genug zu schätzenden Gewinn: Das in solchen Situationen zwangsläufig entstehende Dickicht von Mutmaßungen und gegenseitigen Schuldzuweisungen läßt entwirren.

10 Quellen C. V. Millsap, J. L. Holt: Optimizing Oracle Performance. O Reilly, Sebastopol (CA) 2003, 390 pp. ISBN X. R. J. Niemiec: Oracle 9i Performance Tuning. Tips & Techniques. Mc Graw Hill, New York 2003, 826 pp. ISBN A. Nanda: Perform without Waiting. Oracle Magazin, July/August 2004, pp K. Floss: Tracing SQL in Oracle Database 10g. Oracle Magazin, September/October 2004, pp R. Shee, K. Deshpande, K. Gopalakrishnan: Oracle Wait Interface: A Practical Guide to Performance Diagnostics & Tuning. Mc Graw Hill, New York 2004, pp. (Webseite der Firma von Cary Millsap) Oracle9i Database Online Documentation, Release 2. Kontaktadresse: Dr. Frank Haney Anna-Siemsen-Str. 5 D Jena Telefon: +49(0) Fax: +49(0) Internet:

Was bringt Extended SQL-Tracing für das Performance Tuning

Was bringt Extended SQL-Tracing für das Performance Tuning Was bringt Extended SQL-Tracing für das Performance Tuning? Ein Erfahrungsbericht 11.11.2004 Dr. Frank Haney 1 Inhalt 1. Motivation Tuningziele und -bereiche 2. Defizite traditioneller Tuningmethoden 3.

Mehr

Inhalt. Tools für das SQL-Tuning (Anzeigen der Ausführungspläne)

Inhalt. Tools für das SQL-Tuning (Anzeigen der Ausführungspläne) Inhalt Tools für das SQL-Tuning (Anzeigen der Ausführungspläne) EXPLAIN PLAN SQL*Plus Autotrace SQL Trace und TKPROF V$SQL_PLAN DBMS_XPLAN Extended SQL-Tracing Dr. Frank Haney 1 EXPLAIN PLAN Anweisung

Mehr

Macht ADDM wunschlos glücklich?

Macht ADDM wunschlos glücklich? Macht ADDM wunschlos glücklich? Dr. Frank Haney Consultant Jena Schlüsselworte: Oracle 10g Database, Performance Tuning, Extended SQL-Tracing Einleitung In meinem Vortrag auf der 17. Oracle-Anwenderkonferenz

Mehr

1 Einführung... 1 1.1 Ziele und Zielgruppen... 1 1.2 Was erwartet Sie in diesem Buch... 1 1.3 Skripte und Test-Cases... 2 1.4 Danksagung...

1 Einführung... 1 1.1 Ziele und Zielgruppen... 1 1.2 Was erwartet Sie in diesem Buch... 1 1.3 Skripte und Test-Cases... 2 1.4 Danksagung... Inhaltsverzeichnis 1 Einführung........................................................... 1 1.1 Ziele und Zielgruppen.............................................. 1 1.2 Was erwartet Sie in diesem Buch.....................................

Mehr

Erhöhung der Manageability durch SQL-Profile

Erhöhung der Manageability durch SQL-Profile Erhöhung der Manageability durch SQL-Profile Ein Erfahrungsbericht 20.11.2007 Dr. Frank Haney 1 Inhalt 1. Problemstellung 2. Der SQL-Tuning-Advisor (STA) 3. Anlegen und Implementieren von SQL-Profilen

Mehr

Performance Tools. für alle Editionen

Performance Tools. für alle Editionen Performance Tools. für alle Editionen Andreas Cejna Kodachrome Cloud Control Bunt Umfangreich Mächtig Aber zu welchem Preis? Enterprise Edition in der DB Diagnostic Pack (Tuning Pack) Dark sideofthemoon

Mehr

Johannes Ahrends CarajanDB GmbH. www.carajandb.com 2013 CarajanDB GmbH

Johannes Ahrends CarajanDB GmbH. www.carajandb.com 2013 CarajanDB GmbH Johannes Ahrends CarajanDB GmbH CarajanDB Warum ist eine Anwendung langsam? Beispiele von echten Performanceproblemen 2 Experten mit über 20 Jahren Oracle Erfahrung Firmensitz in Erftstadt bei Köln Spezialisten

Mehr

Datenbanken und Oracle, Teil 2

Datenbanken und Oracle, Teil 2 Datenbanken und Oracle, Teil 2 Mathias Weyland Linux User Group Switzerland 29. Juni 2007 SQL*Plus CHAR/VARCHAR2 Dokumentation Teil I Nachträge 1 SQL*Plus 2 CHAR/VARCHAR2 3 Dokumentation SQL*Plus SQL*Plus

Mehr

Kurs. Teil 4 Shared Pool. Universität Hannover. Agenda. Überblick. Library Cache Oracle 9i Einführung Performance Tuning. Trefferquote.

Kurs. Teil 4 Shared Pool. Universität Hannover. Agenda. Überblick. Library Cache Oracle 9i Einführung Performance Tuning. Trefferquote. Kurs Oracle 9i Einführung Performance Tuning Teil 4 Shared Pool Timo Meyer Wintersemester 2005 / 2006 Seite 1 von 22 Seite 1 von 22 1. 2. 3. SQL Area / 4. 5. 6. Shared Pool Reserved Area 7. Wiederverwendung

Mehr

IBM Informix Tuning und Monitoring

IBM Informix Tuning und Monitoring Seminarunterlage Version: 11.01 Copyright Version 11.01 vom 25. Juli 2012 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

Folgendes PL/SQL Codefragment zeigt das grundlegende Statement für diesen Test: Java. http://www.trivadis.com/images/javaperf_tcm16-7133.

Folgendes PL/SQL Codefragment zeigt das grundlegende Statement für diesen Test: Java. http://www.trivadis.com/images/javaperf_tcm16-7133. Page 1 of 7 Betrifft: Java oder PL/SQL? Art der Info: Technische Background Info Autor: Guido Schmutz (guido.schmutz@trivadis.com) Quelle: Aus unserer Schulungs- und Beratungstätigkeit Mit Oracle8.1 besteht

Mehr

Oracle GridControl Tuning Pack. best Open Systems Day April 2010. Unterföhring. Marco Kühn best Systeme GmbH marco.kuehn@best.de

Oracle GridControl Tuning Pack. best Open Systems Day April 2010. Unterföhring. Marco Kühn best Systeme GmbH marco.kuehn@best.de Oracle GridControl Tuning Pack best Open Systems Day April 2010 Unterföhring Marco Kühn best Systeme GmbH marco.kuehn@best.de Agenda GridControl Overview Tuning Pack 4/26/10 Seite 2 Overview Grid Control

Mehr

Inhalt. 14.7.2009 Dr. Frank Haney 2

Inhalt. 14.7.2009 Dr. Frank Haney 2 Inhalt SQL Tuning in Oracle 9i und 10g SQL Tuning in Oracle 11g - Überblick SQL Plan Management SQL Performance Analyzer Automatic SQL Tuning Adaptive Cursor Sharing Wechselwirkung verschiedener Komponenten

Mehr

Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel

Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel Powerful PL/SQL: Collections indizieren mit VARCHAR2- Indizes ein Praxisbeispiel Schlagworte Autor: Klaus Friemelt, MT AG dynamisches BULK SQL, VARCHAR2-indizierte PL/SQL-Tabellen Einleitung Mit den letzten

Mehr

Martin Wunderli (martin.wunderli@trivadis.com)

Martin Wunderli (martin.wunderli@trivadis.com) Betrifft Standby Aber logisch! Art der Info Lösungskonzept (Januar 2003) Autor Quelle Martin Wunderli (martin.wunderli@trivadis.com) Beratungstätigkeit Schlüsselworte Data Guard, Logische Standby Datenbank

Mehr

IT-Symposium 2004. Ralf Durben. Business Unit Datenbank. ORACLE Deutschland GmbH. www.decus.de 1

IT-Symposium 2004. Ralf Durben. Business Unit Datenbank. ORACLE Deutschland GmbH. www.decus.de 1 Ralf Durben Business Unit Datenbank ORACLE Deutschland GmbH www.decus.de 1 Oracle Database 10g Diagnostik- und Taskmanagement Diagnostik Management Was passiert in der Datenbank, gibt es Probleme? Möglichst

Mehr

Inhaltsverzeichnis. Lutz Fröhlich. PostgreSQL 9. Praxisbuch für Administratoren und Entwickler. ISBN (Buch): 978-3-446-42239-1

Inhaltsverzeichnis. Lutz Fröhlich. PostgreSQL 9. Praxisbuch für Administratoren und Entwickler. ISBN (Buch): 978-3-446-42239-1 Inhaltsverzeichnis Lutz Fröhlich PostgreSQL 9 Praxisbuch für Administratoren und Entwickler ISBN (Buch): 978-3-446-42239-1 ISBN (E-Book): 978-3-446-42932-1 Weitere Informationen oder Bestellungen unter

Mehr

SQL Cockpit & SAP HANA Prüfen Sie Ihre SQL Abfragen auf HANA-Tauglichkeit

SQL Cockpit & SAP HANA Prüfen Sie Ihre SQL Abfragen auf HANA-Tauglichkeit SQL Cockpit & SAP HANA Prüfen Sie Ihre SQL Abfragen auf HANA-Tauglichkeit Johann Fößleitner Cadaxo GmbH email: johann.foessleitner@cadaxo.com Twitter: @foessleitnerj Agenda 1 SAP HANA Integrationsszenarien

Mehr

MySQL Performance Tuning für Entwickler

MySQL Performance Tuning für Entwickler MySQL Performance Tuning für Entwickler Cebit 2015, Hannover Oli Sennhauser Senior MySQL Consultant, FromDual GmbH oli.sennhauser@fromdual.com 1 / 18 FromDual GmbH Support Beratung remote-dba Schulung

Mehr

Schlüsselworte Data Guard, Standby Datenbank, RMAN, Backup, Restore, Recovery

Schlüsselworte Data Guard, Standby Datenbank, RMAN, Backup, Restore, Recovery Betrifft Standby Datenbanken Backup Art der Info Lösungskonzept (November 2002) Autor Irina Flegler (irina.flegler@trivadis.com) Martin Wunderli (martin.wunderli@trivadis.com) Quelle Beratungstätigkeit

Mehr

Kostenlos aber effektiv: Performanceanalyse mit Statspack und SQL* Benedikt Nahlovsky. Performing Databases GmbH Mitterteich

Kostenlos aber effektiv: Performanceanalyse mit Statspack und SQL* Benedikt Nahlovsky. Performing Databases GmbH Mitterteich Kostenlos aber effektiv: Performanceanalyse mit Statspack und SQL* Benedikt Nahlovsky Performing Databases GmbH Mitterteich 2 Referent Benedikt Nahlovsky Troubleshooter, Database integrator, Performance

Mehr

7.4 Analyse anhand der SQL-Trace. 7.3.5 Vorabanalyse mit dem Code Inspector

7.4 Analyse anhand der SQL-Trace. 7.3.5 Vorabanalyse mit dem Code Inspector 7.4 Analyse anhand der SQL-Trace 337 7.3.5 Vorabanalyse mit dem Code Inspector Der Code Inspector (SCI) wurde in den vorangegangenen Kapiteln immer wieder erwähnt. Er stellt ein paar nützliche Prüfungen

Mehr

Darüber hinaus wird das Training dazu beitragen, das Verständnis für die neuen Möglichkeiten zu erlangen.

Darüber hinaus wird das Training dazu beitragen, das Verständnis für die neuen Möglichkeiten zu erlangen. Ora Education GmbH www.oraeducation.de info@oraeducation.de Lehrgang: Oracle 11g: New Features für Administratoren Beschreibung: Der Kurs über fünf Tage gibt Ihnen die Möglichkeit die Praxis mit der neuen

Mehr

Analytische Funktionen erfolgreich eingesetzt

Analytische Funktionen erfolgreich eingesetzt Analytische Funktionen erfolgreich eingesetzt Dani Schnider Trivadis AG Glattbrugg, Schweiz Schlüsselworte: Analytische Funktionen, SQL, Performance Optimierung, Data Warehousing Zusammenfassung Analytische

Mehr

Qure Optimizer für SQL Server

Qure Optimizer für SQL Server Qure Optimizer für SQL Server Schnelleinstieg Januar 2012 Qure Optimizer s Optimierungsprozess sollte niemals direkt auf einer Produktionsdatenbank ausgeführt werden. Der Optimierungsprozess wendet Änderungen

Mehr

27. 03. 2007 IT-Frühstück IT Trend Virtualisierung Hype oder Nutzen? Praxisaspekte

27. 03. 2007 IT-Frühstück IT Trend Virtualisierung Hype oder Nutzen? Praxisaspekte Ole Raether raether@oraservices.de 27. 03. 2007 IT-Frühstück IT Trend Virtualisierung Hype oder Nutzen? Praxisaspekte Inhalt oraservices.de Probleme: Failover Cluster, RAC 24*7 Fazit Was tun? oraservices.de

Mehr

IO Performance in virtualisierten Umgebungen

IO Performance in virtualisierten Umgebungen IO Performance in virtualisierten Umgebungen Bruno Harsch El. Ing. HTL/FH Managing Partner Tel +41 52 366 39 01 bruno.harsch@idh.ch www.idh.ch IDH GmbH Lauchefeld 31 CH-9548 Matzingen 2 Die Firma IDH wurde

Mehr

Performance. is rarely an accident. Martin Klier Lead / Senior Database Administrator. TGW Software Services GmbH Lindenweg 13 92552 Teunz

Performance. is rarely an accident. Martin Klier Lead / Senior Database Administrator. TGW Software Services GmbH Lindenweg 13 92552 Teunz Performance is rarely an accident Martin Klier Lead / Senior Database Administrator TGW Software Services GmbH Lindenweg 13 92552 Teunz Martin Klier Senior Database Administrator TGW Logistics Group /

Mehr

Leistungs- und Geschwindigkeitssteigerung. Dipl.-Ing. Sebastian F. Kleinau Applikationsingenieur

Leistungs- und Geschwindigkeitssteigerung. Dipl.-Ing. Sebastian F. Kleinau Applikationsingenieur Leistungs- und Geschwindigkeitssteigerung von LabVIEW-Projekten Dipl.-Ing. Sebastian F. Kleinau Applikationsingenieur Agenda 1. Einführung 2. Hilfreiche Werkzeuge zur Codeanalyse 3. Benchmarks für LabVIEW-VIs

Mehr

ITIL Capacity Management für den Oracle DBA

ITIL Capacity Management für den Oracle DBA ITIL Capacity Management für den Oracle DBA Peter Stalder Peter.stalder@trivadis.com TrivadisOPEN 21. Okt. 2008 Basel Baden Bern Lausanne Zurich Düsseldorf Frankfurt/M. Freiburg i. Br. Hamburg Munich Stuttgart

Mehr

Inhaltsverzeichnis. Installationsübersicht. A. Installationsübersicht

Inhaltsverzeichnis. Installationsübersicht. A. Installationsübersicht Inhaltsverzeichnis A. Installationsübersicht B. und Optimierungsbereiche B.1 Hardware B.2 OperatingSystem Z/OS B.3 Databasemanagementsystem DB2 B.4 Applikation C. Organisation BSS_Chart-library 1 Installationsübersicht

Mehr

GIA Informatik AG Peyermattstrasse 3 CH-4665 Oftringen Telefon +41 62 789 71 71 Telefax +41 62 789 71 99 info@gia.ch www.gia.ch

GIA Informatik AG Peyermattstrasse 3 CH-4665 Oftringen Telefon +41 62 789 71 71 Telefax +41 62 789 71 99 info@gia.ch www.gia.ch GIA Informatik AG Peyermattstrasse 3 CH-4665 Oftringen Telefon +41 62 789 71 71 Telefax +41 62 789 71 99 info@gia.ch www.gia.ch Agenda 1 GIA Informatik AG 2 SAP MaxDB im Kundeneinsatz 3 Management von

Mehr

Performanceoptimierung mit Exadata Verarbeitung extremer Datenmengen mit PL/SQL basierter Datenbewirtschaftung (Erfahrungsbericht)

Performanceoptimierung mit Exadata Verarbeitung extremer Datenmengen mit PL/SQL basierter Datenbewirtschaftung (Erfahrungsbericht) Performanceoptimierung mit Exadata Verarbeitung extremer Datenmengen mit PL/SQL basierter Datenbewirtschaftung (Erfahrungsbericht) Christian Haag, DATA MART Consulting Consulting Manager Oracle DWH Team

Mehr

Windows Server 2012 R2

Windows Server 2012 R2 Windows Server 2012 R2 Eine Übersicht Raúl B. Heiduk (rh@pobox.com) www.digicomp.ch 1 Inhalt der Präsentation Die wichtigsten Neuerungen Active Directory PowerShell 4.0 Hyper-V Demos Fragen und Antworten

Mehr

Oracle Warehousebuilder. Version 9.2.0.2.8 In Version 9.2er Umgebung

Oracle Warehousebuilder. Version 9.2.0.2.8 In Version 9.2er Umgebung Oracle Warehousebuilder Version 9.2.0.2.8 In Version 9.2er Umgebung Themenüberblick Architektur Vorbereitung Ablauf und Details Anmerkungen / Probleme Architektur GEBIS (Source) Datenfluss

Mehr

In Tabelle 2.1 sehen Sie das Ergebnis beider Ausführungen auf meiner Maschine.

In Tabelle 2.1 sehen Sie das Ergebnis beider Ausführungen auf meiner Maschine. Kapitel 2 Datenverwaltung durch SQL Server Wir wollen das obige Skript zwei Mal laufen lassen, einmal mit und einmal ohne eingeschalteten Schreibcache der Festplatte. Für eine lokale Festplatte können

Mehr

IBM DB2 für Linux/Unix/Windows Monitoring und Tuning

IBM DB2 für Linux/Unix/Windows Monitoring und Tuning IBM DB2 für Linux/Unix/Windows Monitoring und Tuning Seminarunterlage Version: 4.05 Version 4.05 vom 9. Februar 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt-

Mehr

RAC auf Sun Cluster 3.0

RAC auf Sun Cluster 3.0 RAC auf Sun Cluster 3.0 Schlüsselworte RAC, OPS, Sun Cluster, Performance, Availability Zusammenfassung Oracle hat mit dem Real Application Cluster (RAC) aus einer Hochverfügbarkeitslösung eine Höchstverfügbarkeitslösung

Mehr

Strategisches Tuning Teil 2 Analyse

Strategisches Tuning Teil 2 Analyse Strategisches Tuning Teil 2 Analyse TOAD User Konferenz 2007 Dr. Günter Unbescheid Database Consult GmbH Agenda Teil 1 Werkzeuge, Erstellung von Profilen Analysestrategien Informationsquellen der Versionen

Mehr

Erste Schritte, um selber ConfigMgr Reports zu erstellen

Erste Schritte, um selber ConfigMgr Reports zu erstellen Thomas Kurth CONSULTANT/ MCSE Netree AG thomas.kurth@netree.ch netecm.ch/blog @ ThomasKurth_CH Erste Schritte, um selber ConfigMgr Reports zu erstellen Configuration Manager Ziel Jeder soll nach dieser

Mehr

WHERE Klausel Generierung mit.net und Oracle. Aus unserer Projekterfahrung und Architektur-Kurs

WHERE Klausel Generierung mit.net und Oracle. Aus unserer Projekterfahrung und Architektur-Kurs Betrifft Art der Info Quelle WHERE Klausel Generierung mit.net und Oracle Technical Info Aus unserer Projekterfahrung und Architektur-Kurs Where ist the WHERE? Der Artikel untersucht die Möglichkeiten,

Mehr

Datenbanksystem. System Global Area. Hintergrundprozesse. Dr. Frank Haney 1

Datenbanksystem. System Global Area. Hintergrundprozesse. Dr. Frank Haney 1 Datenbanksystem System Global Area Hintergrundprozesse Dr. Frank Haney 1 Komponenten des Datenbanksystems System Global Area Program Global Area Hintergrundprozesse Dr. Frank Haney 2 System Global Area

Mehr

Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen

Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen FAEL-Seminar Aktuelle Sicherheitsprobleme im Internet: Angriffe auf Web-Applikationen Prof. Dr. Marc Rennhard Institut für angewandte Informationstechnologie InIT ZHAW Zürcher Hochschule für Angewandte

Mehr

Einsparung von Wartungs- und Lizenzkosten durch Konsolidierung

Einsparung von Wartungs- und Lizenzkosten durch Konsolidierung Einsparung von Wartungs- und Lizenzkosten durch Konsolidierung Peter Stalder DOAG November 2009 Basel Baden Bern Lausanne Zurich Düsseldorf Frankfurt/M. Freiburg i. Br. Hamburg Munich Stuttgart Vienna

Mehr

Datenbanksysteme. Programmieren von Datenbankzugriffen mit JDBC. Burkhardt Renz. Fachbereich MNI Technische Hochschule Mittelhessen

Datenbanksysteme. Programmieren von Datenbankzugriffen mit JDBC. Burkhardt Renz. Fachbereich MNI Technische Hochschule Mittelhessen Programmieren von Datenbankzugriffen mit JDBC Fachbereich MNI Technische Hochschule Mittelhessen Sommersemester 2015 Überblick über das Package java.sql Übersicht Architektur von JDBC Grundstruktur eines

Mehr

Werkzeuge für Datenbank Handwerker: IBM Data Studio und IBM Optim QWT

Werkzeuge für Datenbank Handwerker: IBM Data Studio und IBM Optim QWT Werkzeuge für Datenbank Handwerker: IBM Data Studio und IBM Optim QWT Neue Technologien effizient nutzen Ehningen, 3. Juli 2014 Rodney Krick rk@aformatik.de aformatik Training & Consulting GmbH & Co. KG

Mehr

Microsoft SQL Server 2005 für Administratoren

Microsoft SQL Server 2005 für Administratoren Microsoft SQL Server 2005 für Administratoren Irene Bauder ISBN 3-446-22800-4 Leseprobe Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-22800-4 sowie im Buchhandel Sichern von

Mehr

Integrated Data Management Konzentrieren sie sich auf ihr Business, und nicht auf die Verwaltung ihrer Daten

Integrated Data Management Konzentrieren sie sich auf ihr Business, und nicht auf die Verwaltung ihrer Daten Integrated Data Management Konzentrieren sie sich auf ihr Business, und nicht auf die Verwaltung ihrer Daten Entwurf Data Architect Verwaltung und Umsetzung komplexer Datenmodelle Graphische Darstellung

Mehr

Availability Manager Overview

Availability Manager Overview DECUS Symposium 2007 Availability Manager Overview Günter Kriebel Senior Consultant OpenVMS guenter.kriebel@hp.com GET CONNECTED People. Training. Technology. 2006 Hewlett-Packard Development Company,

Mehr

XPages Good to know. Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015

XPages Good to know. Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015 XPages Good to know Benjamin Stein & Pierre Hein Stuttgart 7. Mai 2015 Agenda 1. Einführung Was sind XPages? 2. Allgemeine Tipps Allgemeine Tipps für die Verwendung von XPages 3. Designer Tipps Tipps für

Mehr

Prozesse und Logs Linux-Kurs der Unix-AG

Prozesse und Logs Linux-Kurs der Unix-AG Prozesse und Logs Linux-Kurs der Unix-AG Andreas Teuchert 27./28. Juni 2012 Prozesse unter Linux gestartete Programme laufen unter Linux als Prozesse jeder Prozess hat eine eindeutige Prozess-ID (PID)

Mehr

An integrated total solution for automatic job scheduling without user interaction

An integrated total solution for automatic job scheduling without user interaction An integrated total solution for automatic job scheduling without user interaction Multifunktional Der Job-Scheduler ist ein multifunktionaler Taskplaner welcher die Steuerzentrale zur regelmässigen Ausführung

Mehr

Objekt-relationales Mapping und Performance-Tuning

Objekt-relationales Mapping und Performance-Tuning Objekt-relationales Mapping und Performance-Tuning Thomas Krüger tkrueger@vanatec.com Agenda Wege um Daten zu lesen Wege um Daten zu modellieren Wege um Datenbanken effizient zu nutzen 2 2 Wege, Daten

Mehr

Prozesse und Logs Linux-Kurs der Unix-AG

Prozesse und Logs Linux-Kurs der Unix-AG Prozesse und Logs Linux-Kurs der Unix-AG Benjamin Eberle 22. Januar 2015 Prozesse unter Linux gestartete Programme laufen unter Linux als Prozesse jeder Prozess hat eine eindeutige Prozess-ID (PID) jeder

Mehr

The Unbreakable Database System

The Unbreakable Database System The Unbreakable Database System Real Application Cluster Unterföhring, 04.2005 M. Kühn 1 Comparisson HA - HA Ziele, DataGuard, HA Oracle, RAC RAC Features - Cache Fusion, TAF, Load Balancing RAC on Solaris

Mehr

Kurs. Teil 7 UNDO-Management. Universität Hannover. Agenda. Einführung. Nutzung RBS Oracle 9i Einführung Performance Tuning.

Kurs. Teil 7 UNDO-Management. Universität Hannover. Agenda. Einführung. Nutzung RBS Oracle 9i Einführung Performance Tuning. Kurs Oracle 9i Performance Tuning Teil 7 UNDO-Management Timo Meyer Wintersemester 2005 / 2006 Seite 1 von 23 Seite 1 von 23 1. 2. Nutzung des Rollback Segments 3. 4. 5. Größe von UNDO- TBS berechnen 6.

Mehr

Oracle und.net sind ein populäres Gespann. Doch wie lassen sich Oracle Features mit.net nutzen?

Oracle und.net sind ein populäres Gespann. Doch wie lassen sich Oracle Features mit.net nutzen? Betrifft Autor Oracle und.net im n-tier Umfeld Urs Meier (urs.meier@trivadis.com) Art der Info Technical Info (April 2003) Quelle Aus unserer Projekterfahrung Einführung Oracle und.net sind ein populäres

Mehr

Perzentile mit Hadoop ermitteln

Perzentile mit Hadoop ermitteln Perzentile mit Hadoop ermitteln Ausgangspunkt Ziel dieses Projektes war, einen Hadoop Job zu entwickeln, der mit Hilfe gegebener Parameter Simulationen durchführt und aus den Ergebnissen die Perzentile

Mehr

Datenbankenseminar: SAP Reporting Vergleich ABAP vs. Quick View. Dipl. WiFo Sven Adolph

Datenbankenseminar: SAP Reporting Vergleich ABAP vs. Quick View. Dipl. WiFo Sven Adolph Datenbankenseminar: SAP Reporting Vergleich ABAP vs. Quick View Dipl. WiFo Sven Adolph Gehalten am Lehrstuhl PI III Prof. Moerkotte 28.11.2003 Übersicht 1. Motivation 2. Die betriebliche Standardsoftware

Mehr

3 Richtlinienbasierte Verwaltung und Multi-Server- Administration

3 Richtlinienbasierte Verwaltung und Multi-Server- Administration Richtlinienbasierte Verwaltung und Multi-Server-Administration 3 Richtlinienbasierte Verwaltung und Multi-Server- Administration SQL Server Management Studio bietet eine Reihe von Unterstützungsmöglichkeiten,

Mehr

Die Nadel im Heuhaufen? Strategien zur erfolgreichen Performance-Analyse von ORACLE-Datenbanken Dr. Günter Unbescheid Database Consult GmbH, Jachenau

Die Nadel im Heuhaufen? Strategien zur erfolgreichen Performance-Analyse von ORACLE-Datenbanken Dr. Günter Unbescheid Database Consult GmbH, Jachenau 2 3 Die Nadel im Heuhaufen? Strategien zur erfolgreichen Performance-Analyse von ORACLE-Datenbanken Dr. Günter Unbescheid Database Consult GmbH, Jachenau Database Consult GmbH Gegründet 1996 Kompetenzen

Mehr

Multivariate Tests mit Google Analytics

Multivariate Tests mit Google Analytics Table of Contents 1. Einleitung 2. Ziele festlegen 3. Einrichtung eines Multivariate Tests in Google Analytics 4. Das JavaScript 5. Die Auswertung der Ergebnisse Multivariate Tests mit Google Analytics

Mehr

SINT Rest App Documentation

SINT Rest App Documentation SINT Rest App Documentation Release 1.0 Florian Sachs September 04, 2015 Contents 1 Applikation 3 2 Rest Service 5 3 SOAP Service 7 4 Technologiestack 9 5 Deployment 11 6 Aufgabe 1: Google Webservice

Mehr

Manuelles Oracle SQL Tuning

Manuelles Oracle SQL Tuning Manuelles Oracle SQL Tuning Martin Decker ora-solutions.net D/A/CH Schlüsselworte Optimizer, SQL Tuning, Performance, Explain Plan, Hints, Einleitung Der Oracle Cost-Based Optimizer ist die zentrale Komponente

Mehr

Oracle Capacity Planning

Oracle Capacity Planning Seminarunterlage Version: 2.03 Version 2.03 vom 8. Juli 2014 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen sind Warenzeichen oder

Mehr

Archive / Backup System für OpenVMS

Archive / Backup System für OpenVMS Archive / Backup System für OpenVMS DECUS Symposium 2002 Bonn Vortrag-Nr. 3C04 Günther Fröhlin Compaq Computer Corporation Colorado Springs, USA 1 Highlights V4.0 Auslieferung Januar 2002 Hauptversion

Mehr

Client Zertifikate Aus Alt mach Neu --

Client Zertifikate Aus Alt mach Neu -- Client Zertifikate Aus Alt mach Neu -- CAcert - Die Community CA Basiert auf einen Vortrag von Ian Grigg Login v0.0 bis... Login 0.0: Jedem wird vertraut Login 0.1: Passworte + Usernamen Login 0.3: Single

Mehr

MaxDB Datenkollektor. Status: 10.12.2008

MaxDB Datenkollektor. Status: 10.12.2008 MaxDB Datenkollektor Status: 10.12.2008 Inhaltsverzeichnis Einleitung... 3 Die Leistungsmerkmale des ApplicationManager-Datenkollektors für MaxDB... 3 Architektur einer MaxDB-Datenbank... 4 Der MaxDB Datenkollektor...

Mehr

Datenbankadministration

Datenbankadministration Datenbankadministration 10. Monitoring AG DBIS University of Kaiserslautern, Germany Karsten Schmidt kschmidt@informatik.uni-kl.de (Vorlage TU-Dresden) Wintersemester 2008/2009 Momentaufnahmen Momentaufnahmen

Mehr

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller 2002 131 Architekturen Von der DB basierten zur Multi-Tier Anwendung DB/CRM (C) J.M.Joller 2002 131 Lernziele Sie kennen Design und Architektur Patterns, welche beim Datenbankzugriff in verteilten Systemen verwendet

Mehr

Session Storage im Zend Server Cluster Manager

Session Storage im Zend Server Cluster Manager Session Storage im Zend Server Cluster Manager Jan Burkl System Engineer, Zend Technologies Agenda Einführung in Zend Server und ZSCM Überblick über PHP Sessions Zend Session Clustering Session Hochverfügbarkeit

Mehr

Transaktionen in der Praxis. Dr. Karsten Tolle

Transaktionen in der Praxis. Dr. Karsten Tolle Transaktionen in der Praxis Dr. Karsten Tolle Praxisbeispiel in Java Connection con = null; try { con = DriverManager.getConnection("jdbc:db2:sample"); } catch (Exception e) { e.printstacktrace(); } con.setautocommit(false);

Mehr

Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Version: 2014 Orientation 1.0 in Objects GmbH Der Sprecher Erik Bamberg (OIO) 2 1 s Aufgaben des Cachings Datenbank

Mehr

MySQL Backup und Restore

MySQL Backup und Restore MySQL Backup und Restore DOAG Konferenz 2013 Nürnberg Oli Sennhauser Senior MySQL Consultant, FromDual GmbH oli.sennhauser@fromdual.com 1 / 22 Über FromDual GmbH FromDual bietet neutral und unabhängig:

Mehr

DOAG 2010 ORACLE PLATTFORM MIGRATION CROSS PLATFORM TRANSPORTABLE TABLESPACES (XTTS)

DOAG 2010 ORACLE PLATTFORM MIGRATION CROSS PLATFORM TRANSPORTABLE TABLESPACES (XTTS) DOAG 2010 ORACLE PLATTFORM MIGRATION CROSS PLATFORM TRANSPORTABLE TABLESPACES (XTTS) METHODE UND ERFAHRUNGSBERICHT JOSEF LIPPERT FREIBERUFLICHER IT CONSULTANT MÜNCHEN Wer bin ich Freiberuflicher IT Consultant

Mehr

English. Deutsch. niwis consulting gmbh (https://www.niwis.com), manual NSEPEM Version 1.0

English. Deutsch. niwis consulting gmbh (https://www.niwis.com), manual NSEPEM Version 1.0 English Deutsch English After a configuration change in the windows registry, you have to restart the service. Requirements: Windows XP, Windows 7, SEP 12.1x With the default settings an event is triggered

Mehr

SQL and PL/SQL unleashed. Neuheiten bei Oracle 11g und Oracle 12c im Bereich SQL und PL/SQL

SQL and PL/SQL unleashed. Neuheiten bei Oracle 11g und Oracle 12c im Bereich SQL und PL/SQL . Neuheiten bei Oracle 11g und Oracle 12c im Bereich SQL und PL/SQL Johannes Gritsch Themenübersicht Neue Scheduler Job Typen SQL_SCRIPT und BACKUP_SCRIPT SQL RowLimit: PERCENT und TIES WITH-Klausel mit

Mehr

Response Time Analyse unter Oracle 10g

Response Time Analyse unter Oracle 10g Response Time Analyse unter Oracle 10g Dr. Günter Unbescheid Database Consult GmbH Jachenau Copyright Database Consult GmbH 1 Prolog 1 Performanz bezeichnet in der Informatik den Ressourcenverbrauch und

Mehr

SQL. Run. SQL Run - Handbuch. as Mika GmbH. it solutions for your system i

SQL. Run. SQL Run - Handbuch. as Mika GmbH. it solutions for your system i SQL Run SQL Run - Handbuch as Mika GmbH it solutions for your system i SQLRUN Beliebige SQL Statements auf Befehlsebene Inhaltsverzeichnis Programmbeschreibung... 2 1.1 Funktionalitäten... 2 1.1.1 Ausführen

Mehr

Upgrade Notes 9 Social Edition. Stefan Dötsch, Consultant Collaboration Management

Upgrade Notes 9 Social Edition. Stefan Dötsch, Consultant Collaboration Management Upgrade Notes 9 Social Edition Stefan Dötsch, Consultant Collaboration Management Agenda 1. Domino Upgrade 2. Notes Upgrade 3. Roadmap Notes/Domino 03.04.2014 2 System Anforderungen http://www-01.ibm.com/support/docview.wss?uid=swg27007909

Mehr

Vorsicht bei parallelen Abfragen eines Oracle RAC auf Multithreading-Chipsätzen

Vorsicht bei parallelen Abfragen eines Oracle RAC auf Multithreading-Chipsätzen Der Artikel stellt Test-Ergebnisse zur Skalierbarkeit und Performance des Oracle RAC vor. Getestet wurde auf der 10gR2-Chip-Multithreading-Architektur UltraSPARC T2, die auch unter ihrem Codenamen Niagara

Mehr

SQL Server 2008 Performance-Optimierung

SQL Server 2008 Performance-Optimierung Holger Schmeling SQL Server 2008 Performance-Optimierung Das Praxisbuch für Entwickler und Administratoren ^ ADDISON-WESLEY An imprint of Pearson Education München Boston San Francisco Harlow, England

Mehr

PERFORMANCE TUNING: OVERVIEW

PERFORMANCE TUNING: OVERVIEW ORACLE TUNING TEIL 1 Einführung & Allgemeines PERFORMANCE TUNING: OVERVIEW Schematische Darstellung der wichtigsten Einflussfaktoren auf die Performance Sessions SQL Blockgröße Memory I/O Locks Performance

Mehr

Oracle Exadata Storage Server Performance erklärt SmartScan

Oracle Exadata Storage Server Performance erklärt SmartScan Products 31 Daniel Rey, OPITZ CONSULTING Schweiz GmbH Oracle Exadata Storage Server Performance erklärt SmartScan Im Herbst 2008 präsentierte Oracle an der OpenWorld den Exadata Storage Server und die

Mehr

Verwendung von Oracle Rdb Hotstandby

Verwendung von Oracle Rdb Hotstandby Verwendung von Oracle Rdb Hotstandby Ingo Sulzer Technical Consultant, HP 2005 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Übersicht Hotstandby

Mehr

MySQL Queries on "Nmap Results"

MySQL Queries on Nmap Results MySQL Queries on "Nmap Results" SQL Abfragen auf Nmap Ergebnisse Ivan Bütler 31. August 2009 Wer den Portscanner "NMAP" häufig benutzt weiss, dass die Auswertung von grossen Scans mit vielen C- oder sogar

Mehr

Backup und PiTR mit MySQL

Backup und PiTR mit MySQL Backup und PiTR mit MySQL DOAG Konferenz 2014 Nürnberg Oli Sennhauser Senior MySQL Consultant, FromDual GmbH oli.sennhauser@fromdual.com 1 / 20 Über FromDual GmbH FromDual bietet neutral und unabhängig:

Mehr

Cloud Computing. Betriebssicherheit von Cloud Umgebungen C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y

Cloud Computing. Betriebssicherheit von Cloud Umgebungen C O N N E C T I N G B U S I N E S S & T E C H N O L O G Y Cloud Computing Betriebssicherheit von Cloud Umgebungen Urs Zumstein Leiter Performance Care Team Urs.Zumstein@DevoTeam.ch 079 639 42 58 Agenda Definition von Cloud Services Anforderungen an die Betriebssicherheit

Mehr

Performance Tuning & Scale-Out mit MySQL

Performance Tuning & Scale-Out mit MySQL Performance Tuning & Scale-Out mit MySQL Erfa-Gruppe Internet Briefing 2. März 2010 Oli Sennhauser Senior MySQL Consultant, FromDual oli.sennhauser@fromdual.com www.fromdual.com 1 Inhalt Allgemeines zu

Mehr

EXASOL @ Symposium on Scalable Analytics. www.exasol.com. Skalierbare Analysen mit EXASolution

EXASOL @ Symposium on Scalable Analytics. www.exasol.com. Skalierbare Analysen mit EXASolution EXASOL @ Symposium on Scalable Analytics Skalierbare Analysen mit EXASolution EXASOL AG Wer sind wir R&D: + seit 2000 + laufend Forschungsprojekte Produkt: Analytische Datenbank EXASolution Focus auf Komplexität

Mehr

SOLISYON GMBH CHRISTIAN WOLF, BENJAMIN WEISSMAN. Optimierung von Abfragen in MS SQL Server DWH-Umgebungen

SOLISYON GMBH CHRISTIAN WOLF, BENJAMIN WEISSMAN. Optimierung von Abfragen in MS SQL Server DWH-Umgebungen WEITER BLICKEN. MEHR ERKENNEN. BESSER ENTSCHEIDEN. Optimierung von Abfragen in MS SQL Server DWH-Umgebungen SOLISYON GMBH CHRISTIAN WOLF, BENJAMIN WEISSMAN VERSION 1.0 OPTIMIERUNG VON ABFRAGEN IN MS SQL

Mehr

Einleitung. Was ist das Wesen von Scrum? Die Ursprünge dieses Buches

Einleitung. Was ist das Wesen von Scrum? Die Ursprünge dieses Buches Dieses Buch beschreibt das Wesen von Scrum die Dinge, die Sie wissen müssen, wenn Sie Scrum erfolgreich einsetzen wollen, um innovative Produkte und Dienstleistungen bereitzustellen. Was ist das Wesen

Mehr

ANDREAS PROUZA. Wien, 2015-03-27. andreaspr@aon.at andreas@prouza.at. http://www.prouza.at

ANDREAS PROUZA. Wien, 2015-03-27. andreaspr@aon.at andreas@prouza.at. http://www.prouza.at DB2 & SQL E I N F Ü H R U N G T U N I N G O P T I M I E R U N G S E C R E T S ANDREAS PROUZA andreaspr@aon.at andreas@prouza.at http://www.prouza.at Wien, 2015-03-27 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis...

Mehr

Praktische Anwendungsentwicklung mit Oracle Forms

Praktische Anwendungsentwicklung mit Oracle Forms Praktische Anwendungsentwicklung mit Oracle Forms von Perry Pakull, Stefan Jüssen, Walter H. Müller 1. Auflage Hanser München 2007 Verlag C.H. Beck im Internet: www.beck.de ISBN 978 3 446 41098 5 Zu Leseprobe

Mehr

SolidQ Flex Services Walkthrough Part I

SolidQ Flex Services Walkthrough Part I Part I Im Folgenden stellen wir Ihnen in Text und Bild die wichtigsten Funktionen der SolidQ Flex Services vor. 1. Dashboard Nach dem Einloggen sieht man zunächst das Dashboard. Dies gilt sowohl für den

Mehr

Fachbereich Informatik Praktikum 1

Fachbereich Informatik Praktikum 1 Hochschule Darmstadt DATA WAREHOUSE SS2015 Fachbereich Informatik Praktikum 1 Prof. Dr. S. Karczewski Dipl. Inf. Dipl. Math. Y. Orkunoglu Datum: 14.April.2015 1. Kurzbeschreibung In diesem Praktikum geht

Mehr

Application Performance Management. Auch eine Frage des Netzwerkes?

Application Performance Management. Auch eine Frage des Netzwerkes? Application Performance Management Auch eine Frage des Netzwerkes? Agenda Architektur von Webanwendungen Lange Applikationsantwortzeiten Application Performance Management (APM) Netzwerkbasiertes APM Serverbasiertes

Mehr

Helsana Use Case Performance Analyse Intranet. Rolf Mäder, Leiter IT-Engineering, 4.11.2013 V1.0

Helsana Use Case Performance Analyse Intranet. Rolf Mäder, Leiter IT-Engineering, 4.11.2013 V1.0 Helsana Use Case Performance Analyse Intranet Rolf Mäder, Leiter IT-Engineering, 4.11.2013 V1.0 Agenda Inhalt 1 Unser Unternehmen 2 Die Helsana Jahreszeiten 3 Wer ist Emily Was war das Problem? 4 Die Architektur

Mehr

eassessment Oracle DB Engine Whitepaper

eassessment Oracle DB Engine Whitepaper eassessment Oracle DB Engine Whitepaper DOKUMENT: TYP: eassessment Oracle DB Engine Whitepaper Plattformdokumentation ERSTELLT VON: nova ratio AG Universitätsstraße 3 56070 Koblenz Deutschland VERSION:

Mehr

Forms Survival Kit Fehlersuche in WebForms-Applikationen

<Insert Picture Here> Forms Survival Kit Fehlersuche in WebForms-Applikationen Forms Survival Kit Fehlersuche in WebForms-Applikationen Jürgen Menge Oracle Deutschland Forms Survival Kit Fehlersuche in WebForms-Applikationen Einstieg Fehlersuche in Komponenten

Mehr