E-Book, Deutsch, 780 Seiten
Reihe: SAP Press
Schneider Performanceoptimierung für SAP S/4HANA
9. Auflage 2025
ISBN: 978-3-367-11257-9
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
E-Book, Deutsch, 780 Seiten
Reihe: SAP Press
ISBN: 978-3-367-11257-9
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
Holen Sie das Beste aus Ihrem SAP-S/4HANA-System heraus! Dieses Standardwerk zeigt Ihnen, wie Sie Engpässe erkennen und die Systemleistung optimieren. Lernen Sie die Architektur von SAP S/4HANA kennen und nutzen Sie die richtigen Werkzeuge für Performanceanalyse und -tuning. Mit Tipps zum Cloud-Betrieb (Public und Private Cloud) und den neuen SAP-Fiori-Monitoren. Jetzt in der 9. Auflage - komplett aktualisiert.
Aus dem Inhalt:
- Architektur
- Workload-Analyse
- Hardware-Sizing
- Performanceoptimierung in den ABAP Development Tools
- Speicherkonfiguration
- Lastverteilung
- SAP Fiori und SAPUI5
- Sperren und Pufferung
- SQL-Tuning
- SAP-HANA-Datenmodellierung
- Embedded Analytics und CDS-Views
- SAP BW/4HANA
- Technical Monitoring Cockpit
Dr. Thomas Schneider war von 2015 bis 2024 Chief Development Architect für die ABAP-Plattform der SAP SE. Hier arbeitete er insbesondere an Projekten für SAP S/4HANA. Seine Karriere bei SAP begann 1996. Unter anderem leitete er im Bereich Service & Support das Center of Expertise für Performance. 2004 wechselte Dr. Thomas Schneider als verantwortlicher Architekt für IT Service & Application Management in die Entwicklungsabteilung der SAP SE. Zu seinen Spezialgebieten gehören neben der Performance von SAP-Systemen die Themen Total Cost of Ownership (TCO) sowie Entwicklungsprozesse bei SAP-Kunden und -Partnern. Seit 2025 ist er freiberuflich tätig.
Autoren/Hrsg.
Weitere Infos & Material
Vorwort und Danksagung ... 17 Einleitung ... 19 1. Performancemanagement einer SAP-Lösung ... 33 1.1 ... Die Architektur von SAP S/4HANA ... 33 1.2 ... Grundlegende Begriffe und Aufgaben der Performanceoptimierung ... 48 1.3 ... Das Überwachungs- und Optimierungskonzept für eine SAP-Lösung ... 57 1.4 ... Zusammenfassung ... 72 2. Analyse von Hardware, Datenbank und ABAP-Applikationsserver ... 75 2.1 ... Begriffsklärungen ... 76 2.2 ... Analyse der Workprozesse ... 77 2.3 ... Hardwareanalyse ... 91 2.4 ... Datenbankanalyse ... 103 2.5 ... Analyse der SAP-Speicherkonfiguration ... 131 2.6 ... Zusammenfassung ... 140 2.7 ... Übungsfragen ... 141 3. Workload-Analyse ... 143 3.1 ... Einführung in die Workload-Analyse ... 144 3.2 ... Einzelsatzstatistik ... 146 3.3 ... Details zur Workload-Analyse ... 151 3.4 ... Workload-Monitor ... 161 3.5 ... Workload-Analyse durchführen ... 172 3.6 ... Workload-Analyse mit dem technischen Monitoring ... 182 3.7 ... Zusammenfassung ... 188 3.8 ... Übungsfragen ... 190 4. Hardware-Sizing und Komponentenverteilung ... 193 4.1 ... Initiales Hardware-Sizing ... 193 4.2 ... Sizing bei Laststeigerung, Versionswechsel oder Migration ... 212 4.3 ... Systemlandschaft planen ... 221 4.4 ... Zusammenfassung ... 226 4.5 ... Übungsfragen ... 227 5. Optimierung von ABAP-Programmen ... 229 5.1 ... Performance-Trace ... 229 5.2 ... Performanceanalyse mit dem ABAP-Trace (Laufzeitanalyse) ... 246 5.3 ... Analyse des Speicherverbrauchs mit dem ABAP Debugger und im Memory Inspector ... 257 5.4 ... Statische Codeprüfungen mit dem ABAP Test Cockpit ... 262 5.5 ... Tipps und Tricks für performante ABAP-Programme ... 266 5.6 ... Zusammenfassung ... 273 5.7 ... Übungsfragen ... 274 6. Speicherkonfiguration ... 277 6.1 ... Grundlagen der Speicherkonfiguration ... 277 6.2 ... Speicherbereiche konfigurieren und überwachen ... 294 6.3 ... Zusammenfassung ... 306 6.4 ... Übungsfragen ... 308 7. Lastverteilung, Remote Function Calls und SAP GUI ... 311 7.1 ... Services des ABAP-Servers ... 312 7.2 ... Lastverteilung innerhalb der ABAP-Instanzen ... 314 7.3 ... Remote Function Calls ... 336 7.4 ... SAP GUI ... 360 7.5 ... Zusammenfassung ... 367 7.6 ... Übungsfragen ... 370 8. Internetanbindung und SAP Fiori ... 373 8.1 ... SAP-Webanwendungen ... 374 8.2 ... Analysewerkzeuge für Webanwendungen ... 382 8.3 ... Pufferung von Webdokumenten ... 390 8.4 ... Business Server Pages, Web Dynpro ABAP und integrierter ITS ... 396 8.5 ... SAP Fiori, SAPUI5 und OData-Services ... 401 8.6 ... Zusammenfassung ... 419 8.7 ... Übungsfragen ... 421 9. Sperren ... 423 9.1 ... Sperrkonzepte von Datenbanksystem und SAP-System ... 424 9.2 ... Überwachung von Sperren ... 429 9.3 ... Nummernkreispufferung ... 437 9.4 ... Zusammenfassung ... 444 9.5 ... Übungsfragen ... 445
10. Optimierung von SQL-Anweisungen ... 447 10.1 ... Teure SQL-Anweisungen identifizieren und analysieren ... 449 10.2 ... Die fünf goldenen Regeln der performanten SQL-Programmierung ... 457 10.3 ... SQL-Anweisungen im Programm optimieren ... 465 10.4 ... SQL-Anweisungen durch Sekundärindizes optimieren ... 479 10.5 ... Zusammenfassung ... 507 10.6 ... Übungsfragen ... 510
11. Pufferung auf dem Applikationsserver ... 513 11.1 ... Pufferungsarten ... 514 11.2 ... Grundlagen der Tabellenpufferung ... 515 11.3 ... Tabellenpufferung auf dem ABAP-Server überwachen ... 531 11.4 ... Objektorientierte Anwendungspuffer überwachen ... 548 11.5 ... Zusammenfassung ... 553 11.6 ... Übungsfragen ... 555
12. Optimierung von Datenbankanfragen mit SAP HANA ... 557 12.1 ... Grundlagen der Hauptspeicherdatenbank SAP HANA ... 559 12.2 ... Architektur von SAP HANA im Überblick ... 573 12.3 ... SAP-HANA-Administrationswerkzeuge zur Performanceoptimierung ... 576 12.4 ... Code Pushdown ... 582 12.5 ... Analyse teurer SQL-Anweisungen ... 612 12.6 ... SQL Plan Cache und Result Cache ... 625 12.7 ... Management von Tabellen auf SAP HANA ... 639 12.8 ... Zusammenfassung ... 666 12.9 ... Übungsfragen ... 670
13. Optimierung analytischer Anfragen ... 673 13.1 ... Grundlagenwissen zu analytischen Anfragen ... 674 13.2 ... Architektur von SAP S/4HANA Embedded Analytics und von SAP BW/4HANA ... 683 13.3 ... Analyse teurer analytischer Anfragen ... 695 13.4 ... Optimierung teurer analytischer Anfragen ... 703 13.5 ... Zusammenfassung ... 716 13.6 ... Übungsfragen ... 717
Anhang. ... 719 A ... Wichtige Transaktionscodes und Anwendungen ... 721 B ... Fragen und Antworten ... 727 C ... Glossar ... 733 D ... Informationsquellen ... 743 Der Autor ... 761 Index ... 763
Einleitung
Warum ist die Performance Ihrer betriebswirtschaftlichen IT-Anwendung wichtig? Nur bei guten Antwortzeiten können Benutzer motiviert und effizient mit der Anwendung arbeiten. Ein langsames System führt zu Ausfallzeiten und Frustration. Eskaliert die Situation, wird im schlimmsten Fall der zur Bewältigung der Geschäftsprozesse erforderliche Durchsatz nicht mehr erreicht. Mehrarbeit, Produktionsverzögerungen und finanzielle Verluste sind die Folge. Umgekehrt steigert eine systematische, proaktive Performanceoptimierung maßgeblich den Nutzen Ihrer betriebswirtschaftlichen Anwendung.
Die Performance eines Datenverarbeitungssystems ist als die Fähigkeit definiert, gegebene Anforderungen an Antwortzeiten und Datendurchsatz zu erfüllen. Solche Anforderungen können z. B. sein, dass innerhalb 1 Stunde ein Durchsatz von 10.000 gedruckten Rechnungen erreicht werden muss oder dass die Antwortzeit für das Erfassen eines Kundenauftrags unter 1 Sekunde liegen soll. Eine gute Performance ist keine absolute Eigenschaft einer betriebswirtschaftlichen Anwendung, sondern immer relativ zu den Anforderungen an diese zu sehen.
Unter Performanceoptimierung verstehen wir in diesem Buch einen Prozess, der immer fünf Phasen umfasst: Die ersten beiden Phasen sind, zu einem Verständnis der Geschäftsprozesse zu kommen sowie Performanceziele festzulegen und zu quantifizieren. Diese Schritte beziehen alle Beteiligten mit ein, d. h. Techniker und Anwendungsfachleute. Nur auf der Basis dieser Voraussetzungen kann eine Optimierung erfolgreich sein. Die Phasen drei bis fünf umfassen dann die systematische Überwachung, Identifizierung und Analyse von Problemen, die Umsetzung von Optimierungsmaßnahmen und die erneute Analyse zur Verifizierung des Erfolgs der eingeleiteten Maßnahmen (siehe Abbildung 1). Vor unreflektiertem »Herumschrauben« an Konfigurationsparametern und vergleichbaren »Tuningschnellschüssen« müssen wir warnen! Ziel dieses Buches ist es vielmehr, Ihnen die Möglichkeiten zu eröffnen, Performanceprobleme zu identifizieren und zu analysieren, um diese dann gezielt beheben zu können.
Abbildung 1 Performanceoptimierung in fünf Phasen
Eine betriebswirtschaftliche IT-Anwendung besteht technisch gesehen aus zahlreichen Komponenten: aus logischen Komponenten, Prozessen wie Services, Threads oder Workprozessen, aus Speicherbereichen wie Puffern und aus Benutzerkontexten sowie aus physischen Komponenten wie Prozessoren (CPU), Hauptspeicher (RAM), Festplatten und Netzwerksegmenten. Diese Komponenten erlauben jeweils einen maximalen Durchsatz und eine optimale Antwortzeit. Ist das Zusammenspiel der Komponenten nicht ideal abgestimmt oder wird die Leistungsgrenze einzelner Komponenten erreicht, entstehen Wartesituationen, die sich negativ auf Durchsatz und Antwortzeit auswirken. Die Identifizierung, Analyse und Lösung solcher Probleme durch das Abstimmen der Komponenten aufeinander und die Verteilung der im System anfallenden Last sind die Aufgaben, die wir in diesem Buch als technische Optimierung bezeichnen.
Der zweite wichtige Bereich der Performanceoptimierung ist die Vermeidung unnötiger Last. Die Performance kann ebenso von ineffizienten Programmen oder dem ineffizienten Einsatz von Programmen negativ beeinflusst werden. Die Optimierung einzelner Programme bezeichnen wir als Anwendungsoptimierung. Ziel der Optimierung ist es, zunächst die Systemeinstellung und die Anwendungen derart zu verbessern, dass auf der Basis der bereits vorhandenen Hardwareressourcen die gewünschte Performance erreicht wird. Genügt dies nicht, müssen die Ressourcen entsprechend den gewonnenen Erkenntnissen erweitert werden.
Wie viel Aufwand ist für Performanceanalyse und Tuning einer SAP-Lösung nötig? Die Antwort auf diese Frage hängt stark von der Systemgröße ab. Für eine kleine oder mittelgroße Installation ohne Modifikationen am SAP-Standard und ohne Eigenentwicklungen genügt in der Regel eine Performanceoptimierung kurz vor und kurz nach dem Produktivstart sowie nach größeren Veränderungen, z. B. durch Upgrades, Produktionsstarts neuer SAP-Lösungen, die Erhöhung der Benutzerzahl, größere Datenübernahmen oder Mandantentransporte. Darüber hinaus muss man natürlich nach Bedarf eingreifen, wenn akute Performanceprobleme vorliegen. Das Tuningpotenzial und damit auch der notwendige Analyse- und Optimierungsaufwand wachsen mit der Systemgröße an. Die Praxis zeigt, dass insbesondere kundeneigene Entwicklungen und Modifikationen am SAP-Standard zu Performanceengpässen führen. Ursache dafür sind meist ungenügende Tests, aber auch Zeitdruck und mangelnde Erfahrung der Entwickler. Den Extremfall bildet eine ständig weiterentwickelte Großinstallation mit vielen hundert Benutzern, komplizierten Prozessketten, einem Dutzend oder mehr Entwicklern (die oft verschiedenen Beratungsfirmen angehören und zu unterschiedlichen Zeiten und an unterschiedlichen Orten am System arbeiten) und einem ausgelagerten Systemmanagement. In einer solchen Systemumgebung ist es unumgänglich, dass eine kleine Gruppe von Administratoren und Entwicklern die Übersicht über das Gesamtsystem behält und die Performance nicht aus den Augen lässt.
Hilfe bei Performanceanalyse und Tuning bieten die Remote-Services von SAP. Namentlich sind dies der SAP GoingLive Check, der Ihnen den Produktivstart Ihres Systems erleichtert, und der SAP EarlyWatch Alert, der Ihr produktives System überwacht und Ihnen weitere Optimierungen vorschlägt.
Wie trägt ein proaktives Performancemanagement dazu bei, Ihr Ziel zu erreichen, eine betriebswirtschaftliche Anwendung erfolgreich zu betreiben? Wenn Sie dieses Ziel erreichen wollen, müssen Sie zwei Einflussfaktoren im Blick halten: die Zufriedenheit der Benutzer und die Kosten für den Betrieb der betriebswirtschaftlichen Anwendung. Die Kosten für den Betrieb ergeben sich zum einen aus den Kosten für Hardware (Infrastruktur, CPU, Hauptspeicher, Festplatten und Netzwerke) und Betriebspersonal (Administration, Wartung, Fehleranalyse). Nicht vernachlässigen dürfen Sie aber die Kosten, die entstehen, wenn eine Anwendung nicht zur Verfügung steht oder nicht die geforderte Performance erreicht – der Schaden übersteigt in diesem Fall innerhalb weniger Stunden oder Tage den Betrag, der im Mittel in einem Jahr in die proaktive Performanceoptimierung investiert wird. Diese Risikokosten müssen ebenfalls den Kosten für ein proaktives Performancemanagement gegenübergestellt werden. Tabelle 1 führt Ihnen anhand zweier konkreter Beispiele den Nutzen des proaktiven Performancemanagements vor Augen.
| Proaktive | Effekt im | Sofortiger | Sofortiger | Vermindertes |
|---|
| Optimierung von SQL-Anweisungen | Reduktion der Datenbank- | schnellere Antwortzeiten bei bestimmten Transaktionen | Hardwareinvestitionen (Datenbankserver, Speichersystem) können gestreckt werden. | Überlastung des Datenbanksystems wird vermieden. |
| proaktives Datenmanagement (Datenvermeidung, Archivierung, Reorganisation) |
|
|
|




