evodion Information Technologies GmbH

evodion information technologies

Högerdamm 41

D-20097 Hamburg

 

Fon +49 40 27 14 340 0

Fax +49 40 27 14 340 99

info@evodion.de

Oracle Performance Tuning

4-tägige Intensivberatung zur Performance-Steigerung von individuellen Oracle DBMS-Anwendungen

Beratungspaket
Umfang: 10 Tage

Überblick:
Das Oracle DBMS ist eine sehr leistungsfähige relationale Datenbank. Sie lässt sich in unterschiedlichstem Anwendungskontext (z.B. embedded SQL für verschiedene Programmiersprachen, PL/SQL) und auch in Verbindung mit JEE-konformen Applikationsservern (BEA Weblogic, IBM Websphere, Oracle Applicationserver, JBoss ) einsetzen. Die Entwickler haben dabei größtmögliche Freiheiten, um den gestellten Anforderungen der Anwendung gerecht zu werden. Architektur und Datenmodell einer Anwendung haben einen maßgeblichen Einfluss auf ihr Laufzeitverhalten. Beim Einsatz des Oracle DBMS bieten sich umfangreiche Möglichkeiten zur Optimierung der Performance. Dieses Beratungspaket bietet Ihnen eine individuelle Unterstützung in diesem komplexen Aufgabengebiet.

Zielgruppe:
Das Angebot richtet sich an fortgeschrittene Softwareprojekte, die eine Oracle Datenbank nutzen. Der geplante Aufwand bezieht sich auf mittelgroße Projekte (ca. 80-100 Relationen) mit mittlerer Komplexität. Bei anderen Projektgrößen wird der Aufwand individuell angepasst.

Voraussetzungen:
Im Projekt sollten die zu optimierenden Anwendungsfälle fertig entwickelt und frei von Testcode sein. Die Testdaten für die Anwendungsfälle sollten im benötigten Umfang vorliegen. Ferner ist es wichtig, dass ein Projektmitarbeiter zur Verfügung steht, der den Aufbau und den Programmcode des Anwendungssystems gut kennt. Außerdem ist es erforderlich, dass der für das Datenbanksystem verantwortliche Mitarbeiter für Fragen zur Verfügung steht und evtl. steuernd eingreifen kann. Die Optimierungen sollten auf einem dedizierten Testsystem durchgeführt werden, das dem Produktionssystem möglichst realistisch entspricht. Dieses System sollte auch debug-fähig sein.

Ziele:
Tuning der Oracle-Datenbank zur Erzielung bestmöglicher Performance. Weitere Ziele der Beratungsleistung werden zu Beginn festgelegt.

Durchführung:

1. Schwerpunkte, Zielvereinbarung
Sofern sich die Schwäche im Laufzeitverhalten auf bestimmte Anwendungsfälle beschränkt, ist es sinnvoll, diese als Schwerpunkte für die Optimierung auszuwählen. Weiterhin wird festgelegt wie stark sich die Performance verbessern muss. Dies könnte z. B. eine Angabe der Performance-Steigerung in Prozent sein.

2. Testszenarien definieren, Istzustand festhalten
Für zu optimierende Anwendungsfälle werden entsprechende Testszenarien festgelegt. Diese Tests müssen Messergebnisse liefern, mit denen der Zielerreichungsgrad bestimmt werden kann. Um den Istzustand festzuhalten, werden alle Tests zunächst im unveränderten System durchgeführt.

3. Review
In diesem Schritt wird untersucht, welche Optimierungsmaßnahmen bereits zum Einsatz kommen und ob es Auffälligkeiten in der Anwendungsarchitektur oder dem Datenbankmodell gibt. Des weiteren werden die SQL-Ausgaben einer Anwendung betrachtet.

4. Code-Optimierung
Die kritische Begutachtung des Programmcodes der betroffenen Anwendungsfälle kann weitere Möglichkeiten der Optimierung eröffnen. Hierbei können auch Profiler als Hilfsmittel eingesetzt werden.

5. Datenbank-Optimierung
Auch das zugrundeliegende Datenbanksystem bietet ein weites Feld zur Optimierung. Mit Hilfe der zuvor durchgeführten Untersuchungen ist es möglich, die kritischen SQL-Anweisung herauszufinden und diese zusammen mit dem Datenbankadministrator zu optimieren.

6. Modell-Optimierung
Es ist auch möglich, dass die verwendete Anwendungsarchitektur oder das Datenbankmodell Laufzeitengpässe verursacht (z.B. unnötig tiefe Vererbung oder Verteilung der Daten auf zu viele Tabellen).

7. Kontrolle der Zielerreichung
Wenn alle sofort durchführbaren Optimierungen noch nicht zur Zielerreichung führen, muss entschieden werden, welche zusätzlichen Optimierungen erfolgversprechend sein können (z.B. umfangreiche Modell-Optimierungen oder Hardware-Upgrades). Nachdem diese durchgeführt wurden, ist es u. U. sinnvoll im Rahmen eines weiteren Performance Tuning-Beratungspaketes die Optimierungen fortzuführen.