Indexes

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBaza danych SQL w usłudze Microsoft Fabric

Dostępne typy indeksów

W poniższej tabeli wymieniono typy indeksów dostępnych w programie SQL Server i podano linki do dodatkowych informacji.

Typ indeksu Description Dodatkowe informacje
Hash Za pomocą indeksu skrótu dane są dostępne za pośrednictwem tabeli skrótów w pamięci. Indeksy haszujące zużywają stałą ilość pamięci, która jest funkcją liczby kubełków. Indeksy w tabelach Memory-Optimized

Wskazówki dotyczące projektowania indeksu skrótu
Zoptymalizowane pod kątem pamięci nieklastrowane W przypadku indeksów nieklastrowanych zoptymalizowanych pod kątem pamięci użycie pamięci jest funkcją liczby wierszy i rozmiarem kolumn klucza indeksu Indeksy w tabelach Memory-Optimized

Wytyczne dotyczące projektowania indeksów nieklastrowanych optymalizowanych pod kątem pamięci
Clustered Indeks klastrowany sortuje i przechowuje wiersze danych tabeli lub widoku w kolejności na podstawie klastrowanego klucza indeksu. Indeks klastrowany jest implementowany jako struktura indeksu drzewa B, która obsługuje szybkie pobieranie wierszy na podstawie wartości klucza indeksu klastrowanego. indeksy klastrowane i nieklastrowane

Tworzenie indeksu klastrowanego

Wytyczne dotyczące projektowania indeksu klastrowanego
Nonclustered Indeks nieklastrowany można zdefiniować w tabeli lub widoku z indeksem klastrowanym lub stertą. Każdy wiersz indeksu w indeksie nieklastrowanym zawiera nieklastrowaną wartość klucza i lokalizator wierszy. Ten lokalizator wskazuje wiersz danych w indeksie klastrowanym lub stercie o wartości klucza. Wiersze w indeksie są przechowywane w kolejności wartości klucza indeksu, ale wiersze danych nie są gwarantowane w żadnej określonej kolejności, chyba że indeks klastrowany zostanie utworzony w tabeli. indeksy klastrowane i nieklastrowane

Tworzenie indeksów nieklastrowanych

Nieklastrowane wytyczne dotyczące projektowania indeksu
Unique Unikatowy indeks gwarantuje, że klucz indeksu nie zawiera zduplikowanych wartości, dlatego każdy wiersz w tabeli lub widoku jest w jakiś sposób unikatowy.

Unikatowość może być właściwością zarówno indeksów klastrowanych, jak i nieklastrowanych.
Tworzenie indeksu unikatowego

Wskazówki dotyczące projektowania indeksu unikatowego
Columnstore Indeks magazynu kolumn w pamięci przechowuje dane i zarządza nimi przy użyciu magazynu danych opartych na kolumnach i przetwarzania zapytań opartych na kolumnach.

Indeksy magazynu kolumn działają dobrze w przypadku obciążeń magazynowania danych, które wykonują głównie obciążenia zbiorcze i zapytania tylko do odczytu. Użyj indeksu magazynu kolumn, aby osiągnąć do 10-krotny wzrost wydajności zapytań w porównaniu z tradycyjnym magazynem zorientowanym na wiersz oraz do 7-krotnej kompresji danych w przypadku nieskompresowanego rozmiaru danych.
Indeksy kolumnowe: omówienie

wskazówki dotyczące projektowania indeksu magazynu kolumn
Indeksowanie z dołączonymi kolumnami Indeks nieklastrowany, który jest rozszerzony tak, aby zawierał kolumny inne niż kluczowe oprócz kolumn kluczy. Tworzenie indeksów z dołączonymi kolumnami
Indeksowanie kolumn obliczeniowych Indeks w kolumnie pochodzącej z wartości co najmniej jednej innej kolumny lub niektórych danych wejściowych deterministycznych. Indeksy w kolumnach obliczanych
Filtered Zoptymalizowany indeks nieklastrowany, szczególnie odpowiedni do obsługi zapytań wybranych z dobrze zdefiniowanego podzestawu danych. Używa predykatu filtru do indeksowania części wierszy w tabeli. Dobrze zaprojektowany indeks filtrowany może poprawić wydajność zapytań, zmniejszyć koszty konserwacji indeksu i zmniejszyć koszty magazynowania indeksów w porównaniu z indeksami w pełnej tabeli. Tworzenie filtrowanych indeksów

Wytyczne dotyczące projektowania filtrowanego indeksu
Spatial Indeks przestrzenny umożliwia wydajniejsze wykonywanie niektórych operacji na obiektach przestrzennych (danych przestrzennych) w kolumnie typu danych geometrycznych . Indeks przestrzenny zmniejsza liczbę obiektów, na których należy zastosować stosunkowo kosztowne operacje przestrzenne. Omówienie indeksów przestrzennych
XML Rozdrobniona i zapisana reprezentacja dużych obiektów binarnych XML (BLOB) w kolumnie typu danych XML. Indeksy XML (SQL Server)
Pełny tekst Specjalny typ indeksu funkcjonalnego opartego na tokenach, który jest tworzony i obsługiwany przez aparat Microsoft Full-Text dla programu SQL Server. Zapewnia wydajną obsługę zaawansowanych wyszukiwań wyrazów w danych ciągów znaków. Wypełnianie indeksów Full-Text

Note

W dokumentacji jest zwykle używany termin B-tree w odniesieniu do indeksów. W indeksach typu rowstore silnik bazy danych implementuje drzewo B+. Nie dotyczy to indeksów magazynu kolumn ani indeksów w tabelach zoptymalizowanych pod kątem pamięci. Aby uzyskać więcej informacji, zobacz architekturę i przewodnik projektowania indeksu SQL Server i Azure SQL.