Anfang des Inhaltsbereichs

Hintergrunddokumentation Pufferung von Einzelsätzen  Dokument im Navigationsbaum lokalisieren

Bei der Pufferung von Einzelsätzen werden nur die Sätze in den Puffer geladen, auf die tatsächlich lesend zugegriffen wird. Pufferung von Einzelsätzen spart dadurch gegenüber generischer bzw. vollständiger Pufferung Speicherplatz im Puffer ein. Der Verwaltungsaufwand im Puffer ist allerdings höher als bei generischer oder vollständiger Pufferung. Zum Laden der Sätze sind wesentlich mehr Datenbankzugriffe erforderlich als bei den anderen Pufferungsarten.

Beispiel

In diesem Beispiel wird der rot unterlegte Satz aus der Tabelle SCOUNTER von einem Programm gelesen. Falls für die Tabelle die Pufferung von Einzelsätzen gewählt wurde, wird nur der gelesene Satz in den Puffer geladen.

Diese Grafik wird im zugehörigen Text erklärt

Wann ist die Pufferung von Einzelsätzen sinnvoll?

Pufferung von Einzelsätzen ist insbesondere bei großen Tabellen empfehlenswert, für die nur auf wenige Sätze durch SELECT SINGLE zugegriffen wird. Der Umfang der Sätze, auf die zugegriffen wird, sollte zwischen 100-200 kB liegen.

Bei kleinen Tabellen, auf die oft zugegriffen wird, ist vollständige Pufferung in der Regel günstiger. Denn zum Laden einer solchen Tabelle ist bei vollständiger Pufferung nur ein Datenbank-Zugriff erforderlich, während bei Pufferung von Einzelsätzen viele Datenbank-Zugriffe anfallen.

Zugriff auf die gepufferten Daten

Alle Zugriffe, die nicht über SELECT SINGLE abgesetzt werden, gehen am Puffer vorbei direkt auf die Datenbank. Dies gilt auch, wenn im SELECT-Statement der vollständige Schlüssel spezifiziert ist.

Wird mit SELECT SINGLE auf einen noch nicht gepufferten Satz zugegriffen, erfolgt ein Datenbank-Zugriff, um den Satz zu laden. Enthält die Tabelle keinen Satz zum angegebenen Schlüssel, so wird dieser Satz im Puffer als nicht existent vermerkt. Bei einem späteren Zugriff mit demselben Schlüssel kann damit ein erneuter Datenbank-Zugriff vermieden werden.