Performanceoptimierung von ABAP -Programmen

Ähnliche Dokumente
Gradle. Ein kompakter Einstieg in modernes Build-Management. Joachim Baumann. Joachim Baumann, Gradle, dpunkt.verlag, ISBN

Software entwickeln mit Verstand

Abenteuer Softwarequalität

Bereits während seines Studiums der Humanmedizin übte Bertram Solcher fotojournalistische Tätigkeiten für regionale

Tilo Linz ist Vorstand und Mitgründer der imbus AG, einem führenden Lösungsanbieter für Softwaretest und seit mehr als 20 Jahren

Agile Softwareentwicklung in großen Projekten

Panoramafotografie: Theorie und Praxis

Abenteuer Softwarequalität

Andreas Spillner / Ulrich Breymann, Lean Testing für C++-Programmierer, dpunkt.verlag, ISBN

Betriebssysteme. Grundlagen, Konzepte, Systemprogrammierung. von Eduard Glatz. 1. Auflage

TCP/IP Grundlagen und Praxis

Scrum in der Praxis. Erfahrungen, Problemfelder und Erfolgsfaktoren. Bearbeitet von Dipl.-Inform. Sven Röpstorff, Dipl.-Kaufm.

und -implementierungstechniken, Datenbanken & Java.

Dipl.-Inform. Arno Becker Dipl.-Inform. Marcus Pant

Dipl.-Inform. Arno Becker ist bei der visionera GmbH verantwortlich für den Bereich»Mobile Lösungen«. Nach langjähriger Erfahrung mit Java ME

Praxiswissen Softwaretest

Management von IT-Produkten

Barrierefreiheit verstehen und umsetzen

Das Fuji X100 Handbuch

Netzsicherheit. - Grundlagen & Protokolle - Mobile & drahtlose Kommunikation - Schutz von Kommunikationsinfrastrukturen

Konfigurationsmanagement mit Subversion, Maven und Redmine

Besser fotografieren

Neuronale Netze selbst programmieren

ww unk w t.. e p / un plu k s t.de/plus

Psychologie der Fotografie: Kopf oder Bauch?

Dr. Michael Diechtierow

Das Alte Hallenbad Heidelberg

Makrofotografie. Gestaltung, Licht und Technik in Natur und Studio. Cyrill Harnischmacher

Fotokurs Straßenfotografie Szenen, Menschen und Orte im urbanen Raum fotografieren

Das LEGO -MINDSTORMS-EV3-Ideenbuch

Sehen und Gestalten. David DuChemins etwas andere Fotoschule. von David DuChemin. 1. Auflage

ios-apps programmieren mit Swift

Testen in Scrum-Projekten

Das FUJIFILM X100T/X100S Handbuch

Nicolai Josuttis. SOA in der Praxis. System-Design für verteilte Geschäftsprozesse

Pixel & Vektor. Kreative Grafiken mit Illustrator und Photoshop Für CS5 und CS4. Katharina Sckommodau

Fotokurs Straßenfotografie

Fotografie: Mehr als nur Blende und Zeit

Vision Was ist der Sinn und Zweck des Systems? Stakeholder Wem nützt es? Wer ist davon betroffen? Wer hat Einfluss darauf?

Peter Fauland. Das FUJIFILM X100T/X100S Handbuch

Cloud-Computing für Unternehmen


Praxisbuch BI Reporting

Meike Fischer hat an der Hochschule für Gestaltung in Offenbach Visuelle Kommunikation

Dominik Schadow. Java-Web-Security. Sichere Webanwendungen mit Java entwickeln

Software modular bauen

Das "inoffizielle" LEGO-Technic-Buch

IT-Service-Management mit ITIL 2011 Edition

Die Computerwerkstatt

Android 4.4. Programmieren für Smartphones und Tablets - Grundlagen und fortgeschrittene Techniken. von Arno Becker, Marcus Pant

Soft Skills für Softwareentwickler

Gestalten mit Licht und Schatten

IT-Servicemanagement mit ITIL V3

60 Tipps für kreative iphone-fotografie

Tilman Beitter Thomas Kärgel André Nähring Andreas Steil Sebastian Zielenski

Basiswissen Softwaretest

Porträts gekonnt retuschieren mit Photoshop

Kinder fotografieren

Michael Kurz Martin Marinschek

Das Canon EOS 70D Handbuch

JavaScript kinderleicht!

Im Rahmen seiner Beratertätigkeit veröffentlicht er Artikel und hält Vorträge und Schulungen zu diesen und weiteren Themen.

IT-Servicemanagement mit ITIL V3

Fotografieren lernen Band 2

Dipl.-Inform. Sven Röpstorff Dipl.-Kaufm. Robert Wiechmann

Maik Schmidt, Arduino, dpunkt.verlag, ISBN D3kjd3Di38lk323nnm

Basiswissen Software-Projektmanagement

VMware vrealize Automation Das Praxisbuch

Markus Gaulke

Uwe Vigenschow Andrea Grass Alexandra Augstin Dr. Michael Hofmann

Konfigurationsmanagement mit Subversion, Ant und Maven

Web-Apps mit jquery Mobile

Professionell blitzen mit dem Nikon Creative Lighting System

Dr. Carola Lilienthal

Software in 30 Tagen

Das Sony α6000 Handbuch

Analog fotografieren, digital verarbeiten

Maik Schmidt arbeitet seit beinahe 20 Jahren als Softwareentwickler für mittelständische und Großunternehmen. Er schreibt seit einigen Jahren

er auch mit dem 3D-Programm Blender in Kontakt, über das er bisher zahlreiche Vorträge hielt und Artikel in Fachzeitschriften veröffentlichte.

Über die Herausgeber

Frank R. Lehmann. Integrierte Prozessmodellierung mit ARIS

Roberto Valenzuela

Der C/C++-Projektbegleiter

Leitfaden Web-Usability

IT-Projektverträge: Erfolgreiches Management

arbeitete im Max-Planck-Institut und an der Uni Köln. Von ihm sind bereits mehrere Bücher zu Webthemen erschienen.

lowbudgetshooting cyrill harnischmacher Fotozubehör einfach selbst gebaut

Naturfotografie. Landschaften, Pflanzen und Tiere gekonnt fotografieren. von Reinhard Eisele. 1. Auflage

CNC-Fräsen für Maker und Modellbauer

Prof. Dr. Matthias Knoll

Praxiswissen TYPO3 CMS 7 LTS

Transkript:

D3kjd3Di38lk323nnm Siegfried Boes Performanceoptimierung von ABAP -Programmen Wie Sie Ihre SAP -Anwendung schneller machen

Siegfried Boes abap_performance@hotmail.de Lektorat: Dr. Michael Barabas Copy-Editing: Alexander Reischert, Redaktion ALUAN Herstellung: Nadine Thiele Umschlaggestaltung: Helmut Kraus, www.exclam.de Druck und Bindung: Media-Print Informationstechnologie, Paderborn Bibliografische Information Der Deutschen Bibliothek Die Deutsche Bibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über <http://dnb.ddb.de> abrufbar. ISBN 978-3-89864-615-4 1. Auflage 2010 Copyright 2010 dpunkt.verlag GmbH Ringstraße 19 B 69115 Heidelberg Die vorliegende Publikation ist urheberrechtlich geschützt. Alle Rechte vorbehalten. Die Verwendung der Texte und Abbildungen, auch auszugsweise, ist ohne die schriftliche Zustimmung des Verlags urheberrechtswidrig und daher strafbar. Dies gilt insbesondere für die Vervielfältigung, Übersetzung oder die Verwendung in elektronischen Systemen. Es wird darauf hingewiesen, dass die im Buch verwendeten Soft- und Hardware-Bezeichnungen sowie Markennamen und Produktbezeichnungen der jeweiligen Firmen im allgemeinen warenzeichen-, marken- oder patentrechtlichem Schutz unterliegen. In dieser Publikation wird auf Produkte der SAP AG, Dietmar-Hopp-Allee 16, 69190 Walldorf/Deutschland, Bezug genommen. Bei den Bezeichnungen dieser Produkte handelt es sich um eingetragene und/oder nicht eingetragene Marken der SAP AG. Die SAP AG ist weder Autor noch Verleger dieses Buches und ist für seinen Inhalt nicht verantwortlich. Alle Angaben und Programme in diesem Buch wurden mit größter Sorgfalt kontrolliert. Weder Autor noch Verlag können jedoch für Schäden haftbar gemacht werden, die in Zusammenhang mit der Verwendung dieses Buches stehen. 5 4 3 2 1 0

v Vorwort Die Aussage»Das Programm ist zu langsam«ist so alt wie das Programmieren selbst und unabhängig von der verwendeten Programmiersprache. Sie basiert gelegentlich auf unrealistischen Erwartungen, kann aber berechtigt sein, wenn wirklich Performanceprobleme vorliegen. Die Ursachen solcher Probleme können wiederum so vielfältig sein wie die Aufgaben, die mit den Programmen bearbeitet werden. Bei einer Programmiersprache wie C wäre die Sammlung der wichtigsten Ursachen wahrscheinlich ein aussichtsloses Unterfangen. Da Programme in ABAP normalerweise Geschäftsprozesse abbilden, besitzen sie meist eine ähnliche Struktur. Deshalb sind auch die möglichen Ursachen der Performanceprobleme überschaubarer. Die wichtigste Voraussetzung für eine gute Performance ist der optimierte Umgang mit den benötigten Daten. Diese müssen effizient von der Datenbank gelesen werden, Puffer können wiederholte Zugriffe einsparen und auch bei der Nutzung der internen Tabellen muss auf effizientes Lesen geachtet werden. Ein Großteil der Performanceprobleme hängt mit diesen Themen zusammen. Dies zeigt sich in meiner täglichen Arbeit in der Performancegruppe der SAP. Auch beim Lesen der immer wiederkehrenden Fragen im Performance- Forum des SAP Developer Networks (SDN) konnte ich dies bestätigt sehen. Während für SAP-Mitarbeiter schon lange Performance-Schulungen von unserer Arbeitsgruppe angeboten werden, ist das Wissen außerhalb der SAP relativ spärlich. Das Buch wendet sich gleichermaßen an Anfänger als auch an Fortgeschrittene. Als Leser müssen Sie lediglich ein paar Grundkenntnisse der ABAP-Programmierung mitbringen. Bei jedem Thema vermittelt Ihnen ein einführender Abschnitt die notwendigen Voraussetzungen. So erfahren Sie das Wichtigste über die Verarbeitung in der Datenbank, die Funktionsweise der verschiedenen SAP-Puffer und die Grundlagen der Nutzung von internen Tabellen.

vi Vorwort Auch die Performance-Tools, die im gesamten Buch eine wichtige Rolle spielen, werden im Detail eingeführt. Sie erfahren alles, was Sie für einen sinnvollen Einsatz der ABAP und Performance Traces, sowie des Statistikmonitors und des Code Inspectors wissen sollten. Die umfassenden performancerelevanten Empfehlungen zu jedem Thema folgen in eigenen Abschnitten. Die klare Strukturierung ermöglicht es Ihnen, die für Sie interessante Information schnell zu finden. Ein großer Bonus sind die Beispielprogramme zu den Performanceempfehlungen, die Sie auf der Webseite zu diesem Buch finden können (www.dpunkt.de/abap_performance). Anhand des korrekten lauffähigen Programmcodes lässt sich die Verständlichkeit der dargestellten Zusammenhänge noch erhöhen. Außerdem bekommen Sie beim Ausführen der Beispiele ein Gefühl für das erreichbare Maß der Verbesserungen: Sie lernen, was den Code um Faktoren schneller macht und was nur geringe Prozenteffekte bringt. Die Beispielprogramme enthalten wichtige Mittelungen, die für zuverlässige Messergebnisse sorgen. Sie können die Programme leicht um eigene Beispiele erweitern. Schliesslich werden Sie lernen, dass Performancetests genauso wichtig sind wie funktionale Tests. Eine funktional korrektes Programm, das extrem lange braucht, hat nur einen geringen Wert. Durch eine detailierte Analyse finden Sie heraus, ob die Performance eines Programms verbesserbar ist. Bei der Optimierung erfahren Sie in vielen Fällen auch, an welcher Stelle was zu ändern ist. Damit kann das Versprechen des Untertitels des Buches»Wie Sie Ihre SAP-Anwendung schneller machen«eingelöst werden. Nach der Lektüre des Buches werden Sie in der Lage sein, die häufigsten Performanceprobleme auf dem ABAP-Server und der Datenbank zu lösen. Vielleicht können Sie anhand der vorgestellten Grundprinzipien sogar darüber hinausgehende, speziellere Aufgaben lösen. Bleiben dennoch Probleme übrig, dann können Sie sich an das eingangs erwähnte Performance-Forum im SDN wenden, dessen Webadresse Sie im Literaturverzeichnis finden.

Vorwort vii Danksagung Als erstes möchte ich mich bei Dr. Ulrich Marquard bedanken. Als Leiter der Gruppe»Performance, Data Management and Scalability (PDMS)«hat er mich zu dem Thema»ABAP-Performance«gebracht und so die Voraussetzungen geschaffen, dass ich dieses Buch schreiben konnte. Außerdem hat er es mir ermöglicht, dieses Buch parallel zu meiner Arbeit zu erstellen. Als Nächstes bedanke ich mich bei Herrn Dr. Barabas vom dpunkt.verlag für das Angebot, dieses Buch zu veröffentlichen, und für seine Nachsicht als das Projekt etwas größer wurde. Außerdem geht mein Dank an alle Kollegen der PDMS-Gruppe, sowie an alle meine Kontakte aus verschiedenen größeren und kleineren Performanceprojekten, die viel zu dem beigetragen haben, was ich in den letzten elf Jahren über Performance lernen konnte. Für die Unterstützung des Buches möchte ich mich besonders bei meinen Kollegen bedanken, allen voran Dr. Randolf Eilenberger, der sich mit frühen Stadien des Manuskripts auseinander gesetzt hat, dann Dr. Christian Golze, Dr. Manfred Mensch, Ingo Bohn, Dr. Winfried Schleier, Hartmut Willy, Anette Föllmer, Karlheinz Kistner, Clarissa Goetz und Susanne Janssen. Auch von anderen SAP-Kollegen habe ich Unterstützung erhalten; dafür möchte ich Dr. Rolf Hammer, Dr. Ulrich Koch, Tobias Wenner, Dietmar Theobald, Thomas Manzke, Michael Raich und Dr. Veit Bolik danken. Schliesslich geht mein Dank an Thomas Zloch, Sabine Röth und an den Reviewer des dpunkt.verlags für die Anregungen und Hinweise zum Inhalt und zur Form des Textes. Auch bei dem ganzen Team des dpunkt.verlags, insbesondere bei Nadine Thiele, möchte ich mich für die gute Unterstützung bedanken. Mein ganz besonderer Dank gilt jedoch meiner Frau Susanne für die Geduld, die sie während der Monate des Schreibens aufgebracht hat. Siegfried Boes Heidelberg, November 2009