Performance bei der Verwendung von Datenbanken verwalten

Vor der Anforderung von Daten, die in einer Teradata(1)-, Oracle2- oder SQLServer-2005-Datenbank gespeichert sind, verwendet die Anwendung eine Funktion namens Explain-Modus, die die Leistungen von SQL-Abfragen in mehrere durch den Benutzer festgelegte Klassen kategorisiert. Für eine möglichst schnelle und leichte Kategorisierung wird diese ohne tatsächliche Ausführung der vollständigen SQL-Abfrage durchgeführt.

Hinweis
  • (1) Für alle Versionen von Teradata.
  • (2) Für Oracle 10 und alle höheren Versionen.

Ziel ist es, die Arbeitslast der SQL-Abfrage vor deren Ausführung schätzen zu können, um dann, nach Möglichkeit anhand einer unternehmensinternen Richtlinie für den IT-Bereich, zu entscheiden, ob die SQL-Abfrage tatsächlich verwendet werden kann.

So kann z.B. durch eine unternehmensinterne Richtlinie Interaktivität begünstigt werden, und in der Richtlinie werden 3 Klassen von SQL-Abfragen mit einer jeweiligen Höchstdauer festgelegt:
  • Sofort: Dauer < 1 s. Die Abfrage wird akzeptiert und sofort ausgeführt.
  • Batchausführung: 1s <= Dauer < 2 s. Die Abfrage wurde akzeptiert, wird aber erst während der nächsten Leerlauf zeit ausgeführt.
  • Abgelehnt: 2s <= Dauer. Diese Abfrage wird nie ausgeführt.

Anzahl, Namen und Begrenzungen der Klassen werden vom Benutzer so festgelegt, dass die Werte der aktuellen DBMS-Konfiguration und der DBMS-Verwendungsrichtlinie entsprechen.