![](../../com.ibm.help.doc/images/IC-im-sm.gif)
maxlocks - Maximale Anzahl von Sperren vor Eskalation (Konfigurationsparameter)
Mit diesem Parameter wird definiert, wie viel Prozent der Sperrenliste eine Anwendung belegen muss, damit der Datenbankmanager eine Sperreneskalation ausführt.
- Konfigurationstyp
- Datenbank
- Parametertyp
- Konfigurierbar
- Nach Member in einer DB2 pureScale-Umgebung konfigurierbar
- Standardwert [Bereich]
- Automatic [1 - 100 ]Anmerkung: Der Standardwert unterliegt nach der ursprünglichen Datenbankerstellung Änderungen durch den DB2-Konfigurationsadvisor.
- Maßeinheit
- Prozent
Eine Sperreneskalation ist der Prozess, durch den jeweils mehrere Zeilensperren für eine Tabelle durch eine Tabellensperre ersetzt werden, um die Anzahl der Sperren in der Liste zu verringern. Wenn die Anzahl der Sperren, die von einer Anwendung aktiviert wurden, diesen Prozentwert der Gesamtgröße der Sperrenliste erreicht, wird für die Sperren dieser Anwendung eine Sperreneskalation ausgeführt. Eine Sperreneskalation wird auch dann ausgeführt, wenn in der Sperrenliste kein weiterer Platz mehr verfügbar ist.
Der Datenbankmanager bestimmt die zu eskalierenden Sperren, indem er die Sperrenliste nach der Anwendung durchsucht und die Tabelle mit den meisten gesperrten Zeilen ermittelt. Wenn nach der Ersetzung dieser Sperren durch eine einzige Tabellensperre der Wert für maxlocks nicht mehr überschritten wird, wird die Sperreneskalation beendet. Andernfalls wird die Eskalation fortgesetzt, bis der von dieser Anwendung belegte Prozentsatz der Sperrenliste unter den Wert von maxlocks gesunken ist. Das Produkt aus dem Wert des Parameters maxlocks und dem Wert des Parameters maxappls darf nicht kleiner als 100 sein.
Der Wert AUTOMATIC für diesen Parameter aktiviert ihn für die automatische Leistungsoptimierung. Dadurch ist die Speicheroptimierungsfunktion in der Lage, die durch diesen Parameter gesteuerte Größe des Hauptspeicherbereichs an geänderte Auslastungsanforderungen je nach Bedarf dynamisch anzupassen. Da die Speicheroptimierungsfunktion Speicherressourcen auf verschiedene Speicherverbraucher verteilt, müssen mindestens zwei Speicherverbraucher für die automatische Optimierung aktiviert sein, damit eine automatische Optimierung erfolgen kann.
Obwohl der Wert des Parameters locklist zusammen mit dem Parameter maxlocks optimiert werden kann, bewirkt die Inaktivierung der automatischen Optimierung des Parameters locklist nicht automatisch die Inaktivierung der automatischen Optimierung des Parameters maxlocks. Die Aktivierung der automatischen Optimierung für den Parameter locklist führt automatisch zu einer Aktivierung der automatischen Optimierung des Parameters maxlocks.
Die automatische Optimierung dieses Konfigurationsparameters findet nur statt, wenn der Speicher mit automatischer Leistungsoptimierung für die Datenbank aktiviert ist (der Konfigurationsparameter self_tuning_mem muss auf ON gesetzt sein).
- 256 Byte sind erforderlich, um eine Sperre für ein Objekt zu aktivieren, für das keine anderen Sperren aktiv sind.
- 128 Byte sind erforderlich, um eine Sperre für ein Objekt einzutragen, für das bereits eine vorhandene Sperre aktiv ist.
maxlocks = 2 * 100 / maxappls
Dabei wird 2 verwendet, um das Zweifache der durchschnittlichen Anzahl zu erzielen, und
100 ist der höchste zulässige Prozentwert. Wenn Sie nur wenige Anwendungen haben, die
gleichzeitig aktiv sind, können Sie alternativ zu der ersten Formel auch die folgende Formel
verwenden:
maxlocks = 2 * 100 / (durchschnittliche Anzahl der gleichzeitig aktiven
Anwendungen)
- maxlocks * locklist * 4096 /(100 * 128)
Dabei ist 4096 die Anzahl der Byte auf einer Seite, 100 ist der höchste zulässige Prozentsatz für maxlocks und 128 ist die Anzahl der Byte pro Sperre. Wenn Sie wissen, dass eine Ihrer Anwendungen 1000 Sperren benötigt, und Sie keine Sperreneskalation wünschen, sollten Sie die Werte für maxlocks und locklist in dieser Formel so wählen, dass das Ergebnis größer als 1000 ist. (Wenn Sie für maxlocks 10 und für locklist 100 verwenden, ist das Ergebnis der Formel höher als die erforderlichen 1000 Sperren.)
Wenn Sie für maxlocks einen zu niedrigen Wert wählen, tritt eine Sperreneskalation auf, obwohl für andere gleichzeitig ausgeführte Anwendungen noch genügend Speicher für Sperren verfügbar ist. Wenn ein zu hoher Wert für maxlocks gewählt wird, belegen einige wenige Anwendungen u. U. fast den gesamten Speicher für Sperren, während andere Anwendungen eine Sperreneskalation durchführen müssen. Die Notwendigkeit einer Sperreneskalation geht in diesem Fall zulasten des gleichzeitigen Zugriffs.
Mithilfe des Datenbanksystemmonitors können Sie diesen Konfigurationsparameter verfolgen und seinen Wert optimieren.