Różnica pomiędzy Clusterindeks ed i indeks nieklastrowany

Kluczowa różnica między Clusterindeks ed i indeks nieklastrowany

  • Indeks klastrowy to typ indeksu, który sortuje wiersze danych w tabeli według ich wartości kluczowych, podczas gdy indeks nieklastrowy przechowuje dane w jednej lokalizacji, a indeksy w innej.
  • ClusterMetoda ed index przechowuje strony danych w węzłach potomnych indeksu, podczas gdy metoda Non-clustered index nigdy nie przechowuje stron danych w węzłach potomnych indeksu.
  • Indeks klastrowy nie wymaga dodatkowej przestrzeni dyskowej, natomiast indeks nieklastrowany wymaga dodatkowej przestrzeni dyskowej.
  • Cluster Indeks oferuje szybszy dostęp do danych, z kolei indeks nieklastrowany jest wolniejszy.
Różnica pomiędzy Clusterindeks ed i indeks nieklastrowany
Clusterindeks ed vs indeks nieklastrowany

Co to jest indeks?

Indeks to klucz zbudowany z jednej lub większej liczby kolumn w bazie danych, który przyspiesza pobieranie wierszy z tabeli lub widoku. Ten klucz pomaga w bazach danych Oracle, Serwer SQL, MySQLitp., aby szybko znaleźć wiersz powiązany z wartościami kluczy.

Dwa typy indeksów to:

  • Clusterwyd. Indeks
  • Nie-Clusterwyd. Indeks

Czym są sterowniki Clusterindeks wydawniczy?

Cluster indeks jest typem indeksu, który sortuje wiersze danych w tabeli według ich wartości kluczy. W bazie danych istnieje tylko jeden indeks klastrowy na tabelę.

Indeks klastrowany definiuje kolejność, w jakiej dane są przechowywane w tabeli, którą można sortować tylko w jeden sposób. Tak więc dla każdej tabeli może istnieć tylko jeden indeks klastrowany. W systemie RDBMS klucz podstawowy zazwyczaj umożliwia utworzenie indeksu klastrowanego na podstawie tej konkretnej kolumny.

Czym jest indeks nieklastrowany?

Indeks nieklastrowany przechowuje dane w jednej lokalizacji, a indeksy w innej lokalizacji. Indeks zawiera wskaźniki do lokalizacji tych danych. Pojedyncza tabela może mieć wiele indeksów nieklastrowanych, ponieważ indeks w indeksie nieklastrowanym jest przechowywany w różnych miejscach.

Na przykład książka może mieć więcej niż jeden indeks: jeden na początku wyświetlający zawartość książki według jednostek, a drugi indeks pokazujący indeks pojęć w kolejności alfabetycznej.
Indeks nieklastrowany jest zdefiniowany w polu nieuporządkowanym tabeli. Ten typ metody indeksowania pomaga poprawić wydajność zapytań, które używają kluczy, które nie są przypisane jako klucz podstawowy. Indeks nieklastrowany umożliwia dodanie unikalnego klucza dla tabeli.

Charakterystyka Clusterwyd. Indeks

  • Domyślne i posortowane przechowywanie danych
  • Użyj tylko jednej lub więcej kolumn dla indeksu
  • Pomaga przechowywać dane i indeks razem
  • Podział
  • Specjaliści ds. operacyjnych
  • Clusterskanowanie indeksu i wyszukiwanie indeksu
  • Wyszukiwanie klucza

Charakterystyka indeksów nieklastrowanych

  • Przechowuj tylko wartości kluczy
  • Wskaźniki do sterty/Clustered Indeksuj wiersze
  • Umożliwia wtórny dostęp do danych
  • Most do danych
  • Operafunkcje skanowania indeksu i wyszukiwania indeksu
  • Możesz utworzyć indeks nieklastrowany dla tabeli lub widoku
  • Każdy wiersz indeksu w indeksie nieklastrowanym przechowuje wartość klucza nieklastrowanego i lokalizator wiersza

ClusterIndeks ed vs indeks nieklastrowany w SQL: kluczowe różnice

Parametry Clustered Nieklastrowany
Używać do Można sortować rekordy i fizycznie przechowywać indeks klastrowy w pamięci zgodnie z kolejnością. Indeks nieklastrowany pomaga ustalić logiczny porządek wierszy danych i wykorzystuje wskaźniki do fizycznych plików danych.
Metoda przechowywania Umożliwia przechowywanie stron danych w węzłach-liście indeksu. Ta metoda indeksowania nigdy nie przechowuje stron danych w węzłach-liście indeksu.
Rozmiar Rozmiar indeksu klastrowego jest dość duży. Rozmiar indeksu nieklastrowanego jest niewielki w porównaniu do indeksu klastrowanego.
Dostęp do danych Szybciej Wolniejszy w porównaniu do indeksu klastrowego
Dodatkowe miejsce na dysku Nie wymagane Wymagane do osobnego przechowywania indeksu
Typ klucza Domyślnie klucze podstawowe tabeli to a Clusterwyd. Indeks. Można go używać z unikalnym ograniczeniem na stole, które działa jak klucz złożony.
Główna cecha Indeks klastrowy może poprawić wydajność pobierania danych. Należy go utworzyć na kolumnach używanych w złączeniach.

Przykład indeksu klastrowego

W poniższym przykładzie SalesOrderDetailID jest indeksem klastrowym. Przykładowe zapytanie w celu pobrania danych

SELECT CarrierTrackingNumber, UnitPrice
FROM SalesData
WHERE SalesOrderDetailID = 6

Przykład indeksu klastrowego

Przykład indeksu nieklastrowanego

W poniższym przykładzie indeks nieklastrowany jest tworzony na OrderQty i ProductID w następujący sposób

CREATE INDEX myIndex ON
SalesData (ProductID, OrderQty)

Przykład indeksu nieklastrowanego

Poniższe zapytanie zostanie pobrane szybciej w porównaniu do indeksu klastrowego.

SELECT Product ID, OrderQty
FROM SalesData
WHERE ProductID = 714

Przykład indeksu nieklastrowanego

Zalety Clusterwyd. Indeks

Zalety/korzyści indeksu klastrowego są następujące:

  • ClusterIndeksy ed są idealną opcją dla zapytań o zakres lub grupowanie według z zapytaniami typu max, min, count
  • W tego typu indeksach wyszukiwanie może prowadzić bezpośrednio do określonego punktu danych, dzięki czemu można dalej czytać dalej.
  • ClusterMetoda indeksu ed wykorzystuje mechanizm lokalizacji w celu zlokalizowania wpisu indeksu na początku zakresu.
  • Jest to skuteczna metoda wyszukiwania zakresów, gdy żądany jest zakres wartości klucza wyszukiwania.
  • Pomaga zminimalizować transfery stron i zmaksymalizować trafienia w pamięci podręcznej.

Zalety indeksu nieklastrowanego

Zalety korzystania z indeksu nieklastrowanego to:

  • Indeks nieklastrowy pozwala na szybkie pobieranie danych z tabeli bazy danych.
  • Pomaga uniknąć kosztów ogólnych związanych z indeksem klastrowym
  • Tabela może mieć wiele indeksów nieklastrowanych RDBMS. Można go zatem użyć do utworzenia więcej niż jednego indeksu.

Wady Clusterwyd. Indeks

Oto wady/wady korzystania z indeksu klastrowego:

  • Wiele wstawek w kolejności niesekwencyjnej
  • Indeks klastrowy tworzy wiele stałych podziałów stron, które obejmują zarówno strony danych, jak i strony indeksu.
  • Dodatkowa praca dla SQL dla wstawień, aktualizacji i usunięć.
  • Aktualizacja rekordów w indeksie klastrowym trwa dłużej, gdy pola w indeksie klastrowym ulegną zmianie.
  • Węzły liściowe zawierają głównie strony danych w indeksie klastrowym.

Wady indeksu nieklastrowanego

Oto wady/wady korzystania z indeksu nieklastrowanego:

  • Indeks nieklastrowany pomaga przechowywać dane w logicznej kolejności, ale nie umożliwia fizycznego sortowania wierszy danych.
  • Proces wyszukiwania w indeksie nieklastrowanym staje się kosztowny.
  • Za każdym razem, gdy aktualizowany jest klucz klastrowania, wymagana jest odpowiednia aktualizacja indeksu nieklastrowanego, ponieważ przechowuje on klucz klastrowania.

Podsumuj ten post następująco: