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

Ansehen: 19085|Antwort: 2

[Quelle] SQL Server erstellt einen Index

[Link kopieren]
Veröffentlicht am 20.09.2019 09:31:08 | | |
Das Konzept der Indexierung

Ziel der Einrichtung eines Index ist es, die Leistung des Datenbanksystems zu verbessern, die Abfragegeschwindigkeit der Daten zu beschleunigen und die Antwortzeit des Systems zu verkürzen.
Was ist ein Index: Ein Index in einer Datenbank ähnelt einem Inhaltsverzeichnis eines Buches, bei dem man die gewünschten Informationen schnell finden kann, ohne das ganze Buch lesen zu müssen.
In einer Datenbank verwendet ein Datenbankprogramm Indizes, um Daten in einer Tabelle schnell abzufragen, ohne die gesamte Tabelle durchsuchen zu müssen.
Das Inhaltsverzeichnis in einem Buch ist eine Liste der Wörter und der Seitenzahlen, in denen sie liegen, und der Index in der Datenbank ist eine Liste von Werten in einer Tabelle und wo jeder Wert gespeichert ist.
Vor- und Nachteile der Indexierung: Der Großteil des Overheads der Abfrageausführung besteht aus I/O, und eines der Hauptziele der Verwendung von Indizes zur Leistungssteigerung ist es, vollständige Tabellenscans zu vermeiden, da vollständige Tabellenscanning jede Datenseite der Tabelle von der Festplatte lesen muss, und wenn ein Index auf einen Datenwert zeigt, muss die Abfrage nur ein paar Mal auf die Festplatte gelesen werden.
Daher kann die vernünftige Verwendung von Indizes die Abfrage von Daten beschleunigen. Indizes verbessern jedoch nicht immer die Leistung des Systems, indizierte Tabellen benötigen mehr Speicherplatz in der Datenbank, und derselbe Befehl zur Änderung und Löschung von Daten benötigt länger, um den Index auszuführen und zu pflegen.
Daher müssen wir den Index sinnvoll verwenden und ihn rechtzeitig aktualisieren, um den suboptimalen Index zu entfernen.

Klassifikation der Indizes

Der Index ähnelt dem Inhaltsverzeichnis vor dem chinesischen Wörterbuch, und man kann das gewünschte Wort schnell anhand des Pinyin oder des Großkapitals finden.
EINDEUTIG: Der Indexwert jeder Zeile ist eindeutig (eine eindeutige Einschränkung wird erstellt, und das System erstellt automatisch einen eindeutigen Index).
Primärschlüsselindex: Die bei der Erstellung der Tabelle angegebene Primärschlüsselspalte erstellt automatisch einen Primärschlüsselindex und weist einzigartige Merkmale auf.
CLUSTERED: Clustered Indexes sind äquivalent zur Pinyin-Suche eines Wörterbuchs, da der clustered Index Datensätze speichert, die physikalisch kontinuierlich sind, das heißt, Pinyin a muss von b gefolgt werden.
NICHT-Clustered: NICHT-clustered Indizes entsprechen der Verwendung von Wörterbuchradikalen zum Nachschlagen, nicht-clusterte Indizes sind logisch kontinuierlich und die physische Speicherung ist nicht zusammenhängend.
Ein geclusterter Index kann nur eine Tabelle in einer Tabelle haben, während ein nicht-geclusterter Index mehr als eine Tabelle in einer Tabelle haben kann.

Welche Felder müssen indexiert werden

1. Der Primär- und Fremdschlüssel der Tabelle müssen einen Index haben
2. Tabellen mit mehr als 300 Daten sollten einen Index enthalten
3. Tabellen, die häufig mit anderen Tabellen verbunden sind, sollten auf den zusammenhängenden Feldern indexiert werden
4. Felder, die häufig in der Where-Klausel erscheinen, insbesondere solche in großen Tabellen, sollten indexiert werden
5. Felder, die häufig sortiert oder gruppiert werden (d. h. GROUP BY- oder ORDER BY-Operationen ausführen), sollten indexiert werden
6. Der Index sollte auf hochselektiven Feldern aufgebaut sein
7. Der Index sollte auf kleinen Feldern aufgebaut werden, für große Textfelder oder sogar ultra-lange Felder, keine Indizes bauen und Ganzzahlen als Schlüsselwerte verwenden, da ganze Zahlen die schnellste Zugriffsgeschwindigkeit haben
8. Die Erstellung von zusammengesetzten Indizes muss sorgfältig analysiert werden; Versuche, stattdessen Einzelfeldindizes zu verwenden
9. Tabellen, die häufig Datenmanipulationen durchführen, sollten nicht zu stark indexiert werden
10. Nutzlose Indizes löschen, um negative Auswirkungen auf den Ausführungsplan zu vermeiden

Der Nachteil zu vieler Indizes

1. Der Speicherplatz wird größer, und jeder Index muss im Speicherplatz gespeichert werden
2. Wenn es viele nicht-geclusterte Indizes gibt, ändern sich nach der Änderung des Cluster-Index alle nicht-geclusterten Indizes entsprechend
3. Zu viele Indizes führen zu einer Erhöhung der Anzahl der Kombinationen, die im Optimierungsprozess des Optimierers ausgewertet werden müssen, wodurch die Abfragezeit verlängert wird
4. Jeder Index enthält statistische Informationen, und je mehr Indexe, desto mehr statistische Informationen, was die Abfragezeit erhöht
5. Update-Overhead: Sobald sich ein Datenbestand ändert und viele Spalten geändert werden, kann dies dazu führen, dass sich mehrere Indizes ändern, was zu einer Verlangsamung von Updates, Löschungen und Einfügen führt








Vorhergehend:Teenager starke Begleitung MV-Video
Nächster:C# bekommt den aktuellen Systemfestplattenbuchstaben, das Systemverzeichnis, den Desktop usw
 Vermieter| Veröffentlicht am 27.12.2020 11:56:05 |
INDEX ERSTELLEN PersonIndex ON Tabellenname (Feldname)

DROP INDEX PersonIndex ON Tabellenname
 Vermieter| Veröffentlicht am 24.02.2021 15:16:27 |
Wenn das Testfeld der Itsvse-Tabelle keinen Index hat, wird er hinzugefügt

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