Grundlegendes zu IAM-Seiten: Umfangsintervalle

9

Ich lese Itziks Buch "Microsoft SQL Server 2012 abfragen" und lese / schaue mir verschiedene Lehrmaterialien im Internet an. Meine Absicht ist es, ein nützliches Verständnis für die Funktionsweise der Datenbank-Interna zu haben.

Ich habe einen kleinen Zweifel, dass ich die IAM-Seiten nicht lösen konnte. Da ich mich in einem sehr frühen Stadium meines Verständnisses befinde, brauche ich vielleicht zusätzliche Hilfe von denen, die ein besseres Bild davon haben. Entschuldigen Sie mich, wenn meine Zweifel lächerlich erscheinen.

In Kapitel 15 "Implementieren von Indizes und Statistiken" wird ein Bild (siehe unten) als Beispiel für eine IAM-Seite angezeigt:

Beispiel IAM-Seite

An dem roten Pfeil sehen Sie 16 Seiten, die sich in gleichem Maße befinden. Wie ist das möglich? Ist es ein Fehler des Autors / Herausgebers? Oder was ist wahrscheinlicher: Gibt es etwas, das ich nicht richtig verstehe?

Die andere Frage, die ich habe, bezieht sich auf die Seitenintervalle. Warum sind sie nicht zusammenhängend? Nehmen wir zum Beispiel den letzten Umfang, der Seiten mit den IDs 336 bis 22642 oder den vorhergehenden Seiten 296 bis 328 abdeckt.

Aleix
quelle

Antworten:

9

An dem roten Pfeil sehen Sie 16 Seiten, die sich in gleichem Maße befinden. Wie ist das möglich?

Der rote Pfeil zeigt auf einen Eintrag, der angibt, dass Extents innerhalb des GAM-Intervalls beginnen 1:176 und 1:184der aktuellen Entität zugeordnet sind (beide 8-seitigen einheitlichen Extents werden verwendet).

Die andere Frage, die ich habe, bezieht sich auf die Seitenintervalle. Warum sind sie nicht zusammenhängend? Nehmen wir zum Beispiel den letzten Umfang, der Seiten mit den IDs 336 bis 22642 oder den vorhergehenden Seiten 296 bis 328 abdeckt.

Sie sind keine Extents, sondern Extent-Bereiche, die der aktuellen Entität (z. B. Tabelle, Index) innerhalb des 4-GB-GAM-Intervalls zugeordnet sind, das die aktuelle IAM-Seite abdeckt.

Die angegebenen Ausdehnungsbereiche NOT ALLOCATEDkönnen von anderen Entitäten verwendet werden.

Weitere Informationen finden Sie unter Inside the Storage Engine: IAM-Seiten, IAM-Ketten und Zuordnungseinheiten von Paul Randal.

Paul White 9
quelle