J'ai récemment entendu dire que les pages de données d'un index cluster ne sont pas stockées de manière contiguë. Est-ce vrai?
Peut-être que les pages de données sont normalement stockées de manière contiguë avec quelques exceptions à la règle? Ou peut-être que j'ai mal entendu et que la page de données est toujours stockée de manière contiguë.
Merci beaucoup.
sql-server
data-pages
clustered-index
Cacahuète
la source
la source
Réponses:
Les pages de données sont stockées de manière contiguë lorsque l'index est créé et lorsque l'index est reconstruit. Sinon, SQL Server tentera de conserver les pages dans l'ordre physique. Cela n'étant pas possible, un ordre logique est tenté. Vous pouvez obtenir des lacunes dans une table en raison d'autres écritures qui se produisent dans la base de données. SQL Server utilise des arborescences B + pour les index - le niveau feuille (données) de l'index contient les données mais est également une liste doublement liée qui contient des pointeurs vers les pages suivante et précédente. Cela rend moins important que la table soit 100% physiquement contiguë.
la source