> Tech > Retour d’informations en vue (3)

Retour d’informations en vue (3)

Tech - Par iTPro - Publié le 24 juin 2010
email

Vous pouvez observer un troisième type de fragmentation en examinant les valeurs de compteur de fragments et de avg_fragment_size_in_pages. Un fragment est constitué de pages feuille physiquement consécutives dans le même fichier pour une unité d’allocation ; chaque index possède au moins un fragment.

Le nombre maximum de

fragments que peut avoir un index est égal au nombre de pages dans le niveau feuille, en supposant que celles-ci ne soient pas contiguës ou dans l’ordre. Si un index a des fragments plus grands, le nombre d’E/S nécessaires pour lire le même nombre de pages est moins important car SQL Server tire parti de la lecture en avance (Read Ahead). Plus la valeur avg_fragment_size_in_pages est élevée, meilleures sont les performances lors de l’analyse des données, mais jusqu’à un certain point. Lorsque cette valeur est supérieure à 8 pages (à savoir 64 Ko, autrement dit la taille d’une extension), les performances d’analyses seront correctes. Toutefois, l’amélioration des performances ne sera probablement pas mesurable lorsque la taille des fragments dépassera 32 pages (à savoir, 256 Ko).

Les valeurs de compteur de fragments et de avg_fragment_size_in_pages sont indiquées uniquement pour les segments de mémoire et pour les unités d’allocation IN_ROW_DATA concernant les niveaux feuille des index. Aucune information de taille de fragment n’est stockée ou indiquée pour les niveaux non feuille d’un index ou pour les unités d’allocation LOB_DATA ou ROW_OVERFLOW_DATA ; la fonction sys.dm_index_physical_stats() retournera la valeur NULL dans ces cas de figure. Dans l’article « Organisation des index dans SQL Server 2005 », j’indique que vous pouvez appeler sys.dm_index_ physical_stats() avec un paramètre final LIMITED, SAMPLED ou DETAILED. Le mode LIMITED analyse toutes les pages pour un segment de mémoire, mais uniquement celles de niveau parent (à savoir celles au-dessus du niveau feuille) pour un index.

Par conséquent, certaines valeurs (en particulier, toute valeur qui impose à SQL Server d’examiner le contenu des pages de niveau feuille) ne peuvent pas être calculées et retournées en mode LIMITED. Par exemple, la fonction retournera NULL pour la valeur avg_page_space_ used_in_percent dans ce mode. Il en va de même pour d’autres valeurs similaires : record_count, min_record_ size_in_bytes, max_record_size_in_bytes et avg_record _size_in_bytes.

Téléchargez gratuitement cette ressource

Protection des Données : 10 Best Practices

Protection des Données : 10 Best Practices

Le TOP 10 des meilleures pratiques, processus et solutions de sécurité pour mettre en œuvre une protection efficace des données et limiter au maximum les répercutions d’une violation de données.

Tech - Par iTPro - Publié le 24 juin 2010