Hinweise zur Performance von Open-SQL

  • Menge der selektierten Sätze so klein wie möglich halten
    • Ausfeilen der WHERE-Bedingung ist besser, als Sätze umsonst zu lesen und später zu verwerfen
  • Anzahl der pro Satz übertragenen Felder so klein wie möglich halten
    • anstelle von „*“ nur die wirklich benötigten Felder verwenden
    • Aggregatfunktionen benutzen (MAX, MIN, SUM, …)
    • UPDATE nur auf wirklich geänderte Felder, nicht auf den ganzen Satz
    • Duplikate, wenn möglich, mit SELECT DISTINCT ausschließen
  • Wenig Open-SQL-Aufrufe
    • keine geschachtelten SELECTs, besser Views
    • SELECT … INTO TABLE ist besser als viele Einzelselects
    • SELECT … FOR ALL ENTITIES nutzen
  • Optimieren des Suchalgorithmus
    • komplexe WHERE-Bedingung am besten mit AND und EQ zusammensetzen; für Operatoren OR, NOT und IN werden Indizes nicht unterstützt
    • Indizes mit wenigen Feldern benutzen, dabei selektierte Felder zuerst
  • Datenbank entlasten
    • Tabellenpuffer benutzen
    • kein Mehrfachlesen, Zwischenpuffern in internen Tabellen
    • kein Mehrfachaufsetzen umfangreicher SELECTs, besser PACKAGE SIZE nutzen
    • ORDER BY, wenn möglich, durch SORT auf der gelesenen internen Tabelle ersetzen
    • SELECT DISTINCT, wenn möglich, durch SELECT ADJACENT der internen Tabelle ersetzen
Veröffentlicht in ABAP Getagged mit: , , , , , , , , , , , , , , , , , ,

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*