Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 23544|Antwort: 2

[Quelle] SQL Server leistungsoptimierte Indexfragmentierung

[Link kopieren]
Veröffentlicht am 27.12.2020 22:32:27 | | | |
Überblick über die Indexfragmentierung

Was ist Indexfragmentierung und warum sollte ich mich darauf konzentrieren:
Fragmentierung entsteht, wenn die logische Reihenfolge im Index (basierend auf dem Schlüsselwert im Index) nicht mit der physischen Reihenfolge der Indexseiten in den Indexseiten des Index der Seiten übereinstimmt, die der Index enthält.
Wann immer eine Einfügung, Aktualisierung oder Löschoperation auf den zugrundeliegenden Daten durchgeführt wird, ändert die Datenbank-Engine den Index automatisch. Zum Beispiel kann das Hinzufügen von Zeilen zu einer Tabelle dazu führen, dass geteilte Zeilen bestehende Seiten im Index speichern und Platz für das Einfügen neuer Schlüssel schaffen. Im Laufe der Zeit können diese Änderungen dazu führen, dass Informationen im Index in der Datenbank verstreut werden (die Fragmente enthalten). Fragmentierung tritt auf, wenn die logische Reihenfolge (basierend auf Schlüsselwert) in den Seiten, die der Index enthält, nicht mit der physischen Reihenfolge in der Datendatei übereinstimmt.
Eine große Anzahl fragmentierter Indizes kann die Abfrageleistung verlangsamen, da zusätzliche I/O erforderlich ist, um die Daten zu finden, auf die der Index zeigt. Mehr I/O kann dazu führen, dass die Anwendung langsam reagiert, besonders wenn Scan-Operationen erforderlich sind.
Überprüfen Sie die Fragmentierung des Datenbankindexes

Befehl:



Es gibt zwei Möglichkeiten zur Defragmentierung: Reorganisation und Neuerstellung von Indexen; das Wiederaufbau von Indizes bezieht sich auf das Löschen alter Indizes und das Wiederaufbauen neuer Indizes in einer Transaktion, wodurch der Festplattenspeicher des ursprünglichen Index zurückgewonnen und neuer Speicherplatz zur Erstellung einer Indexstruktur zugewiesen wird. Die Reorganisation von Indizes bezieht sich darauf, keinen neuen Speicherplatz zuzuweisen, die Blattknoten der Indexstruktur auf Basis des ursprünglichen Speichers neu zu organisieren, sodass die logische und physikalische Reihenfolge der Datenseiten konsistent sind, und den überschüssigen Speicherplatz im Index freizusetzen.

Verwenden Sie die Funktion sys.dm_db_index_physical_stats, um den Grad der Fragmentierung, das Feld avg_fragmentation_in_percent den Prozentsatz der zurückgegebenen logischen Fragmente zu erkennen; im Allgemeinen empfiehlt Microsoft eine Schwelle von 30 %:

avg_fragmentation_in_percent >5 % und <=30 %: ALTER-INDEX REORGANISIEREN;
avg_fragmentation_in_percent >30 %: ALTER INDEX REBUILD;

avg_fragmentation_in_percent: Indexfragmentierungsprozentsatz, wenn die Fragmentierung weniger als 10 % ~20 % beträgt, ist die Fragmentierung wahrscheinlich kein Problem,Wenn die Indexfragmentierung bei 20 %~40 % liegt, kann die Fragmentierung problematisch sein, aber die Indexauflösung kann durch Indexreorganisation eliminiert werden, und großflächige Fragmentierung (wenn die Fragmentierung größer als 40 %) ist, kann eine Rekonstruktion des Index erfordern.


Abfrage der Fragmentierungsinformationen für alle Indizes einer gegebenen Tabelle



Tabellen-Reindexierung


Stellen Sie den Index aller Tabellen in der gesamten Datenbank neu auf



Betriebsmittel:Der Hyperlink-Login ist sichtbar.




Vorhergehend:Das Anfrageformat wird nicht erkannt, da die URL unerwartet mit "/itsvse" endet.
Nächster:Das ORM-Framework Dapper ist einfach zu bedienen
Veröffentlicht am 22.09.2021 13:11:22 |
Zum Glück,
 Vermieter| Veröffentlicht am 18.11.2025 14:35:31 |
Was ist sp_updatestats?

Es handelt sich um ein systemgespeichertes Verfahren, das Teil des SQL-Server-Systems ist.
Es geht alle Benutzertabellen in der aktuellen Datenbank durch und berechnet und aktualisiert die Statistiken für Spalten und Indizes, deren Daten sich seit der letzten statistischen Aktualisierung geändert haben.
Befehl:
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com