Comprendre les pages IAM: intervalles d'étendue


9

Je lis le livre d'Itzik «Interroger Microsoft SQL Server 2012» ainsi que lire / regarder différents documents éducatifs sur Internet. Mon intention est d'avoir une compréhension utile du fonctionnement des internes de la base de données.

J'ai un petit doute que je n'ai pas pu résoudre sur les pages IAM. Comme je suis à un stade très précoce de ma compréhension, j'ai peut-être besoin d'une aide supplémentaire de ceux qui en ont une meilleure image, alors excusez-moi si mes doutes semblent ridicules.

Dans le chapitre 15 "Implémentation des index et des statistiques" apparaît une image - illustrée ci-dessous - comme exemple de page IAM:

Exemple de page IAM

Vous pouvez voir par la flèche rouge ce qui semble être 16 pages liées dans la même mesure. Comment est-ce possible? Est-ce une erreur d'auteur / éditeur? Ou ce qui est plus probable: y a-t-il quelque chose que je ne comprends pas correctement?

L'autre question que j'ai a trait aux intervalles de pages. Pourquoi ne sont-ils pas contigus? Prenez par exemple la dernière étendue, elle couvrira les pages avec l'ID 336 à 22642, ou la précédente, 296 à 328.

Réponses:


9

Vous pouvez voir par la flèche rouge ce qui semble être 16 pages liées dans la même mesure. Comment est-ce possible?

La flèche rouge pointe vers une entrée indiquant que les extensions commençant à 1:176 et 1:184sont allouées à l'entité actuelle (les deux extensions uniformes de 8 pages sont utilisées) dans l'intervalle GAM.

L'autre question que j'ai a trait aux intervalles de pages. Pourquoi ne sont-ils pas contigus? Prenez par exemple la dernière étendue, elle couvrira les pages avec l'ID 336 à 22642, ou la précédente, 296 à 328.

Ce ne sont pas des étendues, ce sont des plages d'extensions allouées à l'entité actuelle (par exemple table, index) dans l'intervalle de 4 Go GAM couvert par la page IAM actuelle.

Les plages d'étendue indiquées NOT ALLOCATEDpeuvent être utilisées par d'autres entités.

Pour plus d'informations, consultez À l'intérieur du moteur de stockage: pages IAM, chaînes IAM et unités d'allocation par Paul Randal.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.