Best Practice – RESULT CACHE – Werte aus Parametertabelle abfragen

von Tobias Redmann

In nahezu jeder Applikation die ich kenne, wird eine Parametertabelle für globale Konfigurationsparameter eingesetzt. Meist werden die Parameterwerte mit einer get_ParameterWert Funktion ausgelesen und in der Programmlogik verwendet.

Mit wenig Codeänderung kann eine massive Performanceverbesserung durch den Einsatz des ORACLE RESULT CACHES erreicht werden.

Best Practice – RESULT CACHE – Demo

In dem folgenden Beispiel wird eine Parametertabelle mit Konfigurationsparametern, sowie eine allgemeine Zugriffsfunktion erstellt, die die Parameter ausliest.

Die bestehende Funktion get_ParameterWert wird um die Funktionalität des Oracle RESULT CACHE erweitert. Anhand eines Testscriptes wird die Performanceverbesserung transparent und nachvollziehbar dargestellt.

Parametertabelle mit Daten anlegen

Es wird eine Parametertabelle – Key/Value – inklusive Beispielparameter angelegt.

Funktion get_ParameterWert anlegen

Es werden 2 identische Funktionen angelegt – eine mit Result Cache und eine ohne.

Performancemessung

Dieses kleine Demoscript fragt jeden Parameter aus der Parametertabelle 1 Million mal ab. Das Script muss mit SQL*Plus ausgführt werden.

Auf meiner Oracle Datenbank ist die Implementierung mittels RESULT CACHE um den Faktor 60 schneller.

Fazit

Durch dem Einsatz von Oracle RESULT CACHE kann eine massive Verbesserung der Performance erreicht werden. Zu prüfen sind natürlich immer die individuellen Gegebenheiten. U.U.sind nur wenige Zeilen Code anzupassen.

SCHREIBEN SIE EINEN KOMMENTAR