Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Baza 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.
Treści powiązane
- Przewodnik po architekturze i projektowaniu indeksów SQL Server i Azure SQL
- opcja SORT_IN_TEMPDB dla indeksów
- Wyłącz indeksy i ograniczenia
- Włączanie indeksów i ograniczeń
- Zmienianie nazwy indeksów
- Ustaw Opcje Indeksu
- wymagania dotyczące miejsca na dysku dla operacji DDL indeksu
- Optymalizowanie konserwacji indeksu w celu zwiększenia wydajności zapytań i zmniejszenia zużycia zasobów
- Określanie współczynnika wypełnienia dla indeksu
- Przewodnik architektury stron i zakresów
- indeksy klastrowane i nieklastrowane