Oracle Datenbank-Tuning - Der Buffer Cache
Den Buffer Cache vergrößern
Der einfachste Weg zur Verbesserung der Performance ist, den Buffer Cache zu vergrößern. Je größer der Buffer Cache ist, desto geringer ist die Wahrscheinlichkeit, dass Buffer durch den LRU-Mechanismus aus dem Buffer Cache entfernt werden.
Eine Vergrößerung des Buffer Cache erhöht nicht nur die Hit Ratio, auch die Anzahl von Warte-Ereignissen wie buffer busy waits
oder free buffer waits
geht zurück.
Die Hit Ratio verändert sich nicht linear zur Erhöhung der Buffer-Cache-Größe. Eine Verdoppelung des Buffer Cache führt nicht zu einer Verdoppelung der Hit Ratio.
Verschiedene Buffer Pools verwenden
Von vornherein benutzen alle Segmente denselben Buffer Pool, den so genannten Default Pool. Der Default Pool besitzt die Standard-Blockgröße der Datenbank. Ein Pool mit abweichender Blockgröße wird als Subcache bezeichnet.
Ein Subcache wird nach den Mechanismen des Default Pools verwaltet. Oracle unterscheidet die folgenden drei Pool-Typen, die unterschiedlich verwaltet werden:
-
Keep Pool
– Für Segmente, die permanent im Buffer Cache bleiben sollen -
Recycle Pool
– Für Segmente, die nur kurzfristig im Cache behalten werden sollen -
Default Pool
– Standard-Pool für alle Objekte mit Standard-Blockgröße, für die wederKEEP
nochRECYCLE
spezifiziert wurde
Als Administrator müssen Sie festlegen, welcher Pool für welche Segmente geeignet ist. Dazu sollten Sie die Anwendung und das Datenmodell kennen.