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!

meltdownmonk
źródło

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

Thomas Stringer
źródło
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

Mitch Pszenica
źródło