Trace-Vergleich
Systembetrieb & Verfügbarkeit
Eine Performanceanalyse mit dem Debugger nehmen Sie wie folgt vor: Starten Sie das zu untersuchende Programm in einem zweiten Modus in der Workprozess-Übersicht (Transaktion SM50). Aus der WorkprozessÜbersicht gelangen Sie mit der Funktion Debugging in den Debugger. Indem Sie mehrfach hintereinander in den Debugger springen, können Sie die Coding-Stellen im Programm mit hohem CPU-Bedarf identifizieren. Oft sind dies LOOP ... ENDLOOP-Schleifen über große interne Tabellen. Den aktuellen Hauptspeicherbedarf erhalten Sie (im »klassischen« Debugger) mit der Funktion Springen > Weitere Bilder > Speicherverbrauch. Prüfen Sie, ob ein Programmfehler oder eine Fehlbedienung des Programms vorliegt, sodass übermäßig viel Speicher angefordert wird. Als Richtwert mag Ihnen dienen, dass ein Programm, das im Dialogbetrieb von mehreren Benutzern ausgeführt wird, nicht mehr als 100MB allokieren sollte. Zur Erstellung einer Liste der im Speicher gehaltenen Objekte des Programms navigieren Sie im »klassischen« Debugger ab SAP NetWeaver AS ABAP 6.20 mit Springen > Zustandsanzeigen > Speicherverbrauch. Auf der Registerkarte Speicherverbrauch > Ranglisten finden Sie eine Liste von Objekten und deren Speicherverbrauch. In den Versionen AS ABAP 4.6 und 6.10 gelangen Sie zu einer Speicherverbrauchsliste über den Pfad Springen > System > Systembereiche. Geben Sie im Feld Bereich »ITAB-TOP25« ein. Sie erhalten so eine Liste der 25 größten internen Tabellen. Im »neuen« Debugger blenden Sie zunächst das Speicheranalyse-Werkzeug ein, indem Sie auf die Schaltfläche für ein neues Werkzeug klicken und dann unter den angebotenen Werkzeugen im Ordner Speicherverwaltung die Speicheranalyse auswählen. Auf dem Eingangsbildschirm wird daraufhin angezeigt, wie viel Speicher vom analysierten internen Modus allokiert bzw. verwendet wird. Auf der Registerkarte Speicherobjekte finden Sie eine Liste der größten Speicherobjekte – das können interne Tabellen, Objekte, anonyme Datenobjekte oder Strings sein.
Die Basis ist eine Reihe von Programmen und Werkzeugen, die als Schnittstelle zu Datenbanken, Betriebssystemen, Kommunikationsprotokollen und Geschäftsanwendungen (wie FI, CO, MM usw) dienen. Die vollständige Form von BASIS ist "Business Application Software Integrated Solution".
Maximale Satzanzahl
Die mittlere Antwortzeit im Dialog-Task wird von vielen SAP-Anwendern als das entscheidende Kriterium für die Performance eines SAPSystems angesehen. Als »magische Grenze« für eine gute Performance wird in der Praxis oft eine mittlere Dialog-Antwortzeit von 1 Sekunde betrachtet. Ein derart pauschales Kriterium wird jedoch der Vielfalt der unterschiedlichen Anforderungen an SAP-Systeme nicht gerecht. Ein Richtwert muss individuell für jedes System definiert werden.
In einem hybriden Entwicklungsszenario werden die Datenbank-spezifischen Teile der Anwendung mit den Werkzeugen der SAP HANA Platform entwickelt und von Anwendungen im SAP NetWeaver genutzt. Dies kann im AS ABAP über natives SQL oder über sogenannte Stellvertreterobjekte (Proxies) im ABAP Data Dictionary geschehen. Die Datenbankobjekte bleiben für den Applikationsserver eine »Blackbox«. Dieses Entwicklungsszenario unterstützt alle Funktionalitäten von SAP HANA, hat aber den Nachteil, dass Entwickler in beiden Entwicklungswelten zu Hause sein müssen.
Basisadministratoren steht mit "Shortcut for SAP Systems" eine PC-Anwendung zur Verfügung, die etliche Tätigkeiten in der SAP Basis vereinfacht bzw. ermöglicht.
Wenn Sie mehr zum Thema SAP Basis wissen möchten, besuchen Sie die Webseite www.sap-corner.de.
Erstellen Sie aus der Trace-Grundliste heraus eine verdichtete Zusammenfassung, um die SQL-Anweisungen mit den längsten Laufzeiten zu ermitteln: Traceliste > Trace nach SQL-Anweisungen verdichten Erstellen Sie eine Liste identischer Zugriffe, um SQL-Anweisungen zu ermitteln, die mehrfach identisch ausgeführt werden: Traceliste > Identische Selects anzeigen Entscheiden Sie anhand dieser Listen, ob das Programm abgenommen werden kann oder ob es vom zuständigen ABAP-Entwickler nachgebessert werden muss.
Oft sind dies LOOP ... ENDLOOP-Schleifen über große interne Tabellen.