Performance-Tuning

Aus SAP-Wiki
Zur Navigation springenZur Suche springen

Siehe Schlüsselbefehl Select.

Performance-Tuning ist ein Thema in jedem Projekt und jeder Firma. Kein Anwender möchte lange vor dem Bildschirm sitzen und die Sanduhr sehen. Es ist verschenkte Arbeitszeit und nervt die Anwender, wenn sie zu lange warten müssen.

Für die Performance einer SAP-Anwendung gibt es drei wesentliche Faktoren:

  • Die Hardwareausstattung
  • Die Basiseinstellungen des Systems
  • Der Aufbau der SAP-Programme

Dieses Wiki konzentriert sich auf v. a. auf die Anpassungen der SAP-Programme und worauf bei der Programmerstellung hinsichtlich Performance zu achten ist. Es gibt eine Reihe von Faktoren, die bei der programmseitigen Performanceverbesserung zu beachten sind.

Hardwareausstattung

Die Hardwareausstattung ist das Gebiet, wo mit genügend Geld am einfachsten Performanceverbesserungen erreicht werden. Investitionen im Hardwarebereich bringen Leistungsverbesserungen und es besteht nicht die Gefahr, dass durch Programmanpassungen die Funktionalität der Programme negativ verändert wird. Neue Hardware ist jedoch teuer.

  • Datenbank (Anzahl und Leistungsfähigkeit CPUs, sowie Speicher)
  • Applikationsserver (Anzahl und Leistungsfähigkeit)
  • PCs (CPU, RAM, Festplatte)

Programmanpassungen

Datenbank-Operationen

Lesen interner Tabellen

Variablen

Performancemessung im Programm

Performance und HANA

  • HANA wird als Datenbank meist anderen Datenbanken überlegen sein, weil die Daten auch im Memory/Arbeitsspeicher gespeächert werden.
  • Bei HANA werden die Daten einer Datenbanktabellen in aller Regel spaltenorientiert abgespeichert. Wenn man nach dem Namen eines Kunden in der Tabelle KNA1 sucht, dann wird man vor HANA sehr häufig für das Namensfeld KNA1-NAME1 einen Index anlegen, damit die Suche nach diesem Feld schneller läuft. Unter HANA sind Indizes/Sekundärindizes nicht mehr nötig und können gelöscht werden. Die Daten werden automatisch auch sortiert nach der Spalte NAME1 abgelegt und kann die Suche nach Nicht-Primärfeldern genauso schnell sein wie die Suche über einen voll qualifizierten Primärschlüssel.
  • Unter HANA wird man so viel wie möglich der Datenselektion-/Verarbeitung auf die Datenbank verlagern und eine möglichst geringe Datenmenge nach einem Select in eine interne Tabelle/Struktur, bzw. auf den Applikationsserver transportieren.

Debugging

  • Der erste Herangehensweise bei einem Performanceproblem ist, das Programm zu debuggen und dabei zu beobachten welche Statements viel Zeit zur Ausführung benötigen. So erkennt man häufig sehr schnell kritische Stellen, wo es sich lohnt, sich eingehende Gedanken über Performanceverbesserungen zu machen.

Tools

SE30 (ABAP Laufzeitanalyse und Performancetipps)

ST05 (Performance Trace)

SLIN (Erweiterte Syntaxprüfung)

Siehe Performance-Tuning.

SAP-Schulungskurs BC490

SE80 Performance-Beispiele

Literatur