ABAP Performance-Tipps 7.0 - Januar 2010
Der folgende Abschnitt dient für mich hauptsächlich als Nachschlagewerk, deshalb ist er nur knapp mit den wesentlichen Informationen versehen und die Beispiele sind arg verkürzt. Wer es genauer wissen will sollte im Buch
Performance-Optimierung von ABAP-Programmen (siehe
Bücherliste ) nachschlagen. Diese Tipps sind Stand Anfang 2010 und basieren auf den Empfehlungen des Buches angereichert um meine eigenen Erfahrungen und Ansichten. Im Vergleich zu den
ABAP Performance-Tipps 4.6 lassen sich deutliche Unterschiede herauslesen. Das ist zum Einen der sich fortentwickelnden Technik zu verdanken, zum Anderen aber ist es auch Ansichtssache. Und da es zwei verschiedene Autoren mit völligen unterschiedlichem Ansatz und Herkunft sind ist das auch absolut erklärlich. Die Version 4.6 wurde von einem externen SAP-Entwickler geschrieben und war damals das einzige Buch zu diesem Thema. Das hat dann auch die SAP erkannt. Die Version 7.0 dagegen kommt direkt von der SAP. Der Autor kommt direkt von der SAP, er berät dort die SAP Entwicklungsabteilung in Performancefragen.
Hier die Performance-Tipps für ABAP-Programme Stand 2010:
Die generelle Reihenfolge ist Datenbank, Puffer, interne Tabellen. Bei der Datenbank gibt es viel anzumerken: u.a. dass die Reihenfolge auch ganz wichtig ist. Die dramatischsten Performanceprobleme sind fehlende Indizes, oder allgemeiner zu langsame Suchen. Ebenfalls dramatisch kann es sein, wenn viel zu viel gelesen wird, zu wenig einschränkende WHERE-Bedingung, leere FOR ALL ENTRIES Tabelle.
Datenbank
-
jeder SELECT sollte eine WHERE-Bedingung haben die möglichst stark eingrenzt
-
es sollte einen Index geben, der alle WHERE-Bedingungen unterstützt
-
idealerweise Reihenfolge der WHERE-Bedingungen wie die Felder in der Tabelle vorkommen (auch wegen Lesbarkeit)
-
es sollte der Datenbankpuffer verwendet werden
<to be continued>
Puffer
Interne Tabellen