Jakie są różnice między stronami liścia i stronami bez liści?


18

Uruchomiłem kilka raportów użycia indeksu i próbuję uzyskać definicję Leaf i Non-leaf . Wydaje się, że istnieją zarówno wkładki liścia, jak i bez liści, aktualizacje, usuwanie, łączenie stron i przydziały stron. Naprawdę nie wiem, co to znaczy, czy jedno jest lepsze od drugiego.

Jeśli ktoś mógłby podać prostą definicję każdego z nich, a także wyjaśnić, dlaczego Liść lub Nie-liść ma znaczenie, byłoby to mile widziane!

Odpowiedzi:


21

Pomyśl o tym w ten sposób: strony na poziomie liści są końcem drogi do przeszukiwania danych przez strukturę B-drzewa indeksu. Zawierają dane zdefiniowane w definicji indeksu (lub w przypadku indeksu klastrowego, wszystkie dane tabeli) oraz lokalizator wiersza do wiersza danych (w przypadku indeksu nieklastrowanego).

Strony niebędące liśćmi zawierają „mapę drogową” do stron / danych poziomu liści, włączając kluczową wartość, a także wskaźnik do każdej innej strony niebędącej liściem liści (w zależności od głębokości B-drzewa i lokalizacji strony pośredniej ) lub wynikową stronę na poziomie liścia (strona indeksu dla indeksu nieklastrowanego i strona danych dla indeksu klastrowanego).

Edycja: Oto dobry obraz, który może posłużyć do pomysłu.

wprowadź opis zdjęcia tutaj


1
Dobra odpowiedź, ale powinieneś link do swoich źródeł (zwłaszcza podczas kopiowania zdjęć): technet.microsoft.com/en-us/library/…
MikeTeeVee

4
  • liść = W indeksie klastrowym, w którym znajdują się wszystkie dane danych wiersza. W indeksie nieklastrowanym kolumny tworzące indeks, a także wszelkie uwzględnione kolumny i klastrowany klucz indeksu (jeśli tabela ma indeks klastrowany)
  • non-leaf = wewnętrzny węzeł indeksu (zawiera tylko dane kolumny, które są częścią indeksu)

Każdy indeks składa się z pojedynczego węzła głównego, być może kilku warstw pośrednich wewnętrznych węzłów drzewa i pojedynczej warstwy węzłów liści.

W indeksie klastrowym węzły liści są w rzeczywistości tabelą. W indeksie nieklastrowanym węzły liści zawierają dane kolumn, wszelkie zawarte kolumny i klucze indeksów klastrowych.

Podstawy indeksu SQL Server

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.