> Data > Vue d’ensemble des informations de fragmentation SQL Server

Vue d’ensemble des informations de fragmentation SQL Server

Data - Par Kalen Delaney - Publié le 24 juin 2010
email

L’article « Organisation des index dans SQL Server 2005 » présente les spécifications permettant d’appeler la nouvelle fonction TVF (Table-Valued Function) sys.dm_db_index_physical_stats() dans SQL Server utilise des listes de pages séparées (organisées en fonction du mode de stockage par SQL Server des données sur la page). Par ailleurs, la version 2005 introduit la possibilité de créer une table ou un index sur des partitions distinctes, chaque partition ayant sa propre liste de pages. Une liste de pages d’un type pour une partition est appelée unité d’allocation. SQL Server 2005 gère un maximum de trois unités d’allocation pour chaque table ou index de chaque partition. Ces trois unités d’allocation sont mappés avec trois types de pages gérés par SQL Server 2005 : IN_ROW_DATA (à savoir les lignes de données ou d’index classiques), LOB_DATA (à savoir, les données d’objets de grande taille, telles que text, ntext ou image) et ROW_ OVERFLOW_DATA (un nouveau type de stockage).

Vue d’ensemble des informations de fragmentation SQL Server

Outre le fait qu’elle retourne une ligne d’informations par unité d’allocation de chaque partition pour chaque table ou index, la fonction sys.dm_db_index_ physical_stats() renvoie également une ligne par niveau pour chaque index. Le tableau 1 présente les colonnes qui vous aideront à identifier ce à quoi chaque ligne de résultat fait référence.

Dans SQL Server 2000 et 7.0, DBCC SHOWCONTIG retourne des informations à propos de quatre types de fragmentation : fragmentation interne et trois types de fragmentation externe. (L’encadré Web « Going to Pieces », http://www.itpro.fr (Club Abonnés) explique la différence entre la fragmentation interne et la fragmentation externe dans SQL Server, ainsi que la relation existant entre les deux.) Néanmoins, les valeurs indiquées pour deux de ces types de fragmentation sont dénuées de sens lorsqu’une table ou un index s’étend sur plusieurs fichiers. Dans SQL Server 2005, toutes les valeurs retournées sont exploitables sur plusieurs fichiers. Cependant, tous les types de fragmentation ne conviennent pas à n’importe quelle structure.

Dans SQL Server 2005, la valeur avg_page_space_ used_in_percent fait référence à la fragmentation interne. Cette valeur flottante correspond à la moyenne sur toutes les pages pour un niveau d’index particulier d’un type d’unité d’allocation au niveau d’une partition. Il s’agit du seul type de fragmentation indiqué par SQL Server 2005 concernant les pages LOB_DATA et ROW_OVERFLOW_DATA. La valeur avg_fragmentation_in_percent fait référence à la fragmentation externe. Cette valeur flottante représente la fragmentation logique pour les index ou la fragmentation d’extensions pour les segments de mémoire (heap) dans l’unité d’allocation IN_ROW_DATA. SQL Server retourne la valeur 0 pour les unités d’allocation LOB_DATA et ROW_OVERFLOW_DATA.

Téléchargez gratuitement cette ressource

Guide de Cloud Privé : Enjeux & Perspectives

Guide de Cloud Privé : Enjeux & Perspectives

Dans ce nouveau Livre Blanc Blue + VMware, découvrez les 5 prérequis indispensables à la mise en œuvre d'une solution de Cloud Privé, agile, évolutive, garantissant la sécurité de vos infrastructures et de vos données.

Data - Par Kalen Delaney - Publié le 24 juin 2010