Was macht die Defragmentierung für SQL-Systeme?

Autor: Lewis Jackson
Erstelldatum: 12 Kann 2021
Aktualisierungsdatum: 25 Juni 2024
Anonim
Was macht die Defragmentierung für SQL-Systeme? - Technologie
Was macht die Defragmentierung für SQL-Systeme? - Technologie

Inhalt

Q:

Was macht die Defragmentierung für SQL-Systeme?


EIN:

Kontinuierliche Datenbankwartung und -überwachung sind die Schlüsselelemente für den reibungslosen Betrieb eines SQL-Systems. Beim Erstellen und Auffüllen einer Datenbank werden die Daten zunächst an einem zusammenhängenden physischen Speicherort abgelegt (sofern ausreichend zusammenhängender physischer Speicherplatz verfügbar ist). In diesem Fall ist es wahrscheinlich, dass die logische Reihenfolge und die physische Reihenfolge der Daten ähnlich sind, und dies erhöht die Leistung.

Wenn die Daten geändert, gelöscht oder aktualisiert werden, werden relevante Indizes ebenfalls automatisch aktualisiert, um diese Änderungen widerzuspiegeln. Infolgedessen werden die Indizes fragmentiert und die Informationen über den Speicherbereich verteilt. Dadurch wird die physische Reihenfolge der Daten geändert (da die zusammenhängende Zuordnung verloren geht) und das Abrufen wird zeitaufwändig, was zu einer langsamen Datenbankleistung führt.


Die Lösung für dieses Problem ist die regelmäßige Defragmentierung. Durch die Defragmentierung werden die Indizes tatsächlich neu erstellt oder organisiert, um die logische Reihenfolge der Daten mit der physischen Reihenfolge abzugleichen. Vor der Defragmentierung sollten alle Indizes ordnungsgemäß analysiert werden. Die Analyseergebnisse bestimmen, ob eine Reorganisation oder ein Neuaufbau erforderlich ist.

Die zwei Hauptoperationen, die durch den Defragmentierungsprozess ausgeführt werden, sind:

  • Indexreorganisation - Die Indexreorganisation wird durchgeführt, wenn die Fragmentierung niedrig ist und die Leistung nicht stark beeinträchtigt wird. Dieser Prozess führt tatsächlich die physische Neuordnung von Seiten auf Blattebene durch, um sie der logischen Reihenfolge anzupassen. Es werden keine neuen Seiten erstellt. Es werden nur die vorhandenen Seiten neu angeordnet. Die Reorganisation kann durchgeführt werden, während das System online ist, ohne den normalen Datenbankbetrieb zu blockieren.
  • Neuerstellung des Index - Der Indexwiederherstellungsprozess wird ausgeführt, wenn die Fragmentierung eine tiefere Ebene aufweist und die Leistung zu langsam ist. In diesem Prozess wird der ursprüngliche Index gelöscht und ein neuer Index erstellt. So werden die physische und logische Reihenfolge auf die ursprünglichen Positionen zurückgesetzt und die Leistung verbessert sich auf vielfältige Weise. Durch den Neuaufbau können bei Bedarf auch neue Seiten erstellt und im Offline- oder Online-Modus ausgeführt werden.

Daher sollte die Defragmentierung Teil des SQL Server-Wartungsprozesses sein und muss ernst genommen werden. Es muss ein geeigneter Plan für die Abfrageanalyse erstellt und befolgt werden. Basierend auf der Ausgabe der Abfrageanalyse muss der Index neu erstellt oder neu organisiert werden. Kurz gesagt, Defragmentierung ist für die Leistungsverbesserung von SQL-Systemen unerlässlich.