Share via


Dynamisches Sperren

Wenn Sie Sperren auf niedriger Ebene verwenden, z. B. Zeilensperren, wird die Parallelität erhöht, da die Wahrscheinlichkeit geringer ist, dass zwei Transaktionen gleichzeitig Sperren für die gleichen Daten anfordern. Das Verwenden von Sperren auf niedriger Ebene erhöht außerdem die Anzahl der Sperren sowie der Ressourcen, die für deren Verwaltung erforderlich sind. Wenn Sie Tabellen- oder Seitensperren auf hoher Ebene verwenden, wird der Aufwand zwar gesenkt, jedoch auf Kosten der Parallelität.

Diagramm mit Kosten und Granularität im Vergleich

Microsoft SQL Server-Datenbankmodul legt Sperren dynamisch fest, um die kosteneffektivsten Sperren zu bestimmen. Datenbankmodul bestimmt beim Ausführen einer Abfrage automatisch, welche Sperren, basierend auf den Merkmalen des Schemas und der Abfrage, am sinnvollsten sind. Um beispielsweise den Aufwand für die Sperren zu senken, kann der Abfrageoptimierer festlegen, dass beim Ausführen eines Indexscans Sperren auf Seitenebene für einen Index eingerichtet werden.

Dynamische Sperren bieten die folgenden Vorteile:

  • Vereinfachte Datenbankverwaltung. Datenbankadministratoren müssen die Sperreneskalationsschwellen nicht anpassen.
  • Gesteigerte Leistung. Datenbankmodul minimiert den Aufwand des Systems mithilfe von Sperren, die speziell auf die Aufgabe zugeschnitten sind.
  • Anwendungsentwickler können sich auf die Entwicklung konzentrieren. Datenbankmodul passt Sperren automatisch an.

Siehe auch

Konzepte

Sperrengranularität und -hierarchien
Sperrmodi

Hilfe und Informationen

Informationsquellen für SQL Server 2005