Indizes
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance SQL-Datenbank in Microsoft Fabric
Verfügbare Indextypen
In der nachfolgenden Tabelle sind die Typen von Indizes aufgelistet, die in SQL Server verfügbar sind. Außerdem werden hier Links auf zusätzliche Informationen bereitgestellt.
Indextyp | Beschreibung | Weitere Informationen |
---|---|---|
Hash | Mit einem Hashindex erfolgt der Datenzugriff über eine Hashtabelle im Arbeitsspeicher. Hashindizes belegen einen festen Speicherplatz, dessen Größe eine Funktion der Bucketanzahl ist. | Richtlinien für die Verwendung von Indizes für speicheroptimierte Tabellen Hash Index Design Guidelines (Richtlinien zum Entwerfen von Hashindizes) |
Speicheroptimiert, nicht gruppiert | Bei speicheroptimierten, nicht gruppierten Indizes basiert die Arbeitsspeichernutzung auf der Zeilenanzahl und Größe der Indexschlüsselspalten. | Richtlinien für die Verwendung von Indizes für speicheroptimierte Tabellen Memory-Optimized Nonclustered Index Design Guideline (Richtlinien zum Entwerfen von speicheroptimierten, nicht gruppierten Indizes) |
Gruppiert | In einem gruppierten Index werden die Datenzeilen der Tabelle oder Sicht basierend auf dem Schlüssel des gruppierten Indexes sortiert und gespeichert. Der gruppierte Index wird in Form einer B-Strukturindexstruktur implementiert, die das schnelle Abrufen der Zeilen unterstützt, basierend auf ihren Werten im gruppierten Index. | Beschreibung von gruppierten und nicht gruppierten Indizes Erstellen gruppierter Indizes Clustered Index Design Guidelines (Richtlinien zum Entwerfen von gruppierten Indizes) |
Nicht gruppiert | Ein nicht gruppierter Index kann für eine Tabelle oder Sicht mit einem gruppierten Index bzw. für einen Heap definiert werden. Jede Indexzeile im nicht gruppierten Index enthält den nicht gruppierten Schlüsselwert und einen Zeilenlokator. Dieser Lokator verweist im gruppierten Index oder Heap auf die Datenzeile mit dem Schlüsselwert. Die Zeilen im Index werden in der Reihenfolge der Indexschlüsselwerte gespeichert, die Datenzeilen weisen jedoch nicht in jedem Fall eine bestimmte Reihenfolge auf, es sei denn, es wird ein gruppierter Index für die Tabelle erstellt. | Beschreibung von gruppierten und nicht gruppierten Indizes Erstellen nicht gruppierter Indizes Nonclustered Index Design Guidelines (Richtlinien zum Entwerfen von nicht gruppierten Indizes) |
Eindeutig | Mit einem eindeutigen Index wird sichergestellt, dass der Indexschlüssel keine doppelten Werte enthält; jede Zeile in der Tabelle oder Sicht ist folglich eindeutig. Eindeutigkeit kann eine Eigenschaft sowohl von gruppierten als auch von nicht gruppierten Indizes sein. |
Erstellen eindeutiger Indizes Unique Index Design Guidelines (Richtlinien zum Entwerfen von eindeutigen Indizes) |
columnstore | Ein Columnstore-Index im Arbeitsspeicher speichert und verwaltet Daten durch die Verarbeitung von spaltenbasiertem Datenspeicher und spaltenbasierten Abfragen. Columnstore-Indizes sind optimal für Data Warehousing-Arbeitsauslastungen geeignet, die hauptsächlich Massenladevorgänge und schreibgeschützte Abfragen ausführen. Verwenden Sie den Columnstore-Index, um eine bis zu zehnfache Abfrageleistung gegenüber der herkömmlichen zeilenorientierten Speicherung und eine bis zu siebenfache Datenkomprimierung im Vergleich zur unkomprimierten Datengröße zu erzielen. |
Beschreibung von Columnstore-Indizes Columnstore Index Design Guidelines (Richtlinien zum Entwerfen von Columnstore-Indizes) |
Index mit eingeschlossenen Spalten | Ein nicht gruppierter Index, der dahingehend erweitert wird, dass er neben Schlüsselspalten auch Nichtschlüsselspalten enthält. | Erstellen von Indizes mit eingeschlossenen Spalten |
Index in berechneten Spalten | Ein Index für eine Spalte, die vom Wert anderer Spalten abgeleitet wird, oder bestimmte deterministische Eingaben. | Indizes in berechneten Spalten |
Gefiltert | Ein optimierter nicht gruppierter Index, der sich besonders für Abfragen eignet, bei denen aus einer fest definierten Teilmenge von Daten ausgewählt wird. Dieser verwendet ein Filterprädikat, um einen Teil der Zeilen in der Tabelle zu indizieren. Mit einem sorgfältig entworfenen gefilterten Index können im Gegensatz zu Tabellenindizes die Abfrageleistung verbessert und der Aufwand für die Indexverwaltung und -speicherung reduziert werden. | Erstellen gefilterter Indizes Filtered Index Design Guidelines (Richtlinien zum Entwerfen von gefilterten Indizes) |
Spatial | Mit einem räumlichen Index können bestimmte Vorgänge an räumlichen Objekten (räumliche Daten) in einer Spalte vom Datentyp geometry effizienter ausgeführt werden. Der räumliche Index verringert die Anzahl von Objekten, auf die relativ aufwendige räumliche Vorgänge angewendet werden müssen. | Übersicht über räumliche Indizes |
XML | Eine aufgeteilte und dauerhafte Darstellung der XML-BLOBS (Binary Large Objects) in der XML-Datentypspalte. | XML-Indizes (SQL Server) |
Volltext | Ein besonderer Typ eines tokenbasierten funktionellen Indexes, der durch die Microsoft-Volltext-Engine für SQL Server erstellt und verwaltet wird. Er stellt effiziente Unterstützung für komplexe Wortsuchvorgänge in Zeichenfolgendaten bereit. | Auffüllen von Volltextindizes |
Hinweis
In der Dokumentation wird der Begriff „B-Struktur“ im Allgemeinen in Bezug auf Indizes verwendet. In Zeilenspeicherindizes implementiert die Datenbank-Engine eine B+-Struktur. Dies gilt nicht für Columnstore-Indizes oder In-Memory-Datenspeicher. Weitere Informationen finden Sie im Leitfaden zur Architektur und zum Entwerfen von SQL Server- und Azure SQL-Indizes.
Zugehöriger Inhalt
- Leitfaden zur Architektur und zum Design von SQL Server-Indizes
- SORT_IN_TEMPDB-Option für Indizes
- Deaktivieren von Indizes und Constraints
- Aktivieren von Indizes und Einschränkungen
- Umbenennen von Indizes
- Festlegen von Indexoptionen
- Speicherplatzanforderungen für Index-DDL-Vorgänge
- Optimale Wartung von Indizes zum Verbessern der Leistung und Verringern der Ressourcenauslastung
- Angeben des Füllfaktors für einen Index
- Leitfaden für die Architektur von Seiten und Datenbank-Shards
- Gruppierte und nicht gruppierte Indizes