Une fois la compression en place sur nos tables et index, il est intéressant de se pencher sur l’état des nouvelles lignes insérées.
Surveiller l’insertion de nouvelles lignes
On pourrait légitimement imaginer qu’elles vont hériter du paramètre de compression de la table ou de l’index. Nous allons voir que ce n’est pas toujours le cas, lorsque la compression est de niveau PAGE.
En effet, dans tous les cas, si l’insertion de nouveaux enregistrements sur une page compressée en mode PAGE provoque un page split, le moteur va évaluer si l’activation de la compression PAGE sur ces nouveaux enregistrements pourrait permettre d’éviter ce page split. Si tel est le cas, la page est recompressée dans son ensemble (niveau PAGE donc) et le page split est annulé. Sinon, les enregistrements sont ajoutés à la page en étant simplement compressé en ROW, et le page split se produit.
Surveiller l’insertion de nouvelles lignes
Par ailleurs, les HEAP offrent en plus une particularité. Si des lignes sont ajoutées dans des pages d’un HEAP déjà compressées en niveau PAGE, elles hériteront effectivement du niveau de compression. En revanche, si l’ajout de ligne provoque la création de nouvelles pages, elles n’hériteront pas de la compression. Les lignes insérées seront compressées au niveau ROW et non pas au niveau page, sauf dans les deux cas suivants :
– Les données sont insérés en bloc (bulk) et les optimisations d’insertion en blocs sont activées
– Les données sont insérées à l’aide de la syntaxe INSERT INTO … WITH (TABLOCK)
Dans les autres cas, il faudra relancer un rebuild du HEAP via la commande ALTER TABLE … REBUILD WITH (DATA_COMPRESION=PAGE) pour que ces nouvelles lignes / pages soient compressées.
Conclusion
La compression s’avère très utile pour optimiser l’utilisation de l’espace disque. Le point important est d’arriver à bien cibler les objets à compresser, afin d’éviter tout impact négatif sur les performances. Dans un cas extrême, j’ai vu un traitement faisant des insertions massives de dizaines de milliers de lignes, en mode ligne à ligne avoir un temps d’exécution multiplier par 3 par la simple activation de la compression page !
On passera donc beaucoup de temps à analyser les objets candidats à la compression, son implémentation ne consistant finalement qu’en un simple rebuild.
Téléchargez cette ressource
Microsoft 365 Tenant Resilience
Face aux failles de résilience des tenants M365 (configurations, privilèges, sauvegarde). Découvrez 5 piliers pour durcir, segmenter et surveiller vos environnements afin de limiter l’impact des attaques. Prioriser vos chantiers cyber et améliorer la résilience de vos tenants Microsoft 365.
Les articles les plus consultés
- Partager vos images, vidéos, musique et imprimante avec le Groupe résidentiel
- Activer la mise en veille prolongée dans Windows 10
- Afficher les icônes cachées dans la barre de notification
- Cybersécurité Active Directory et les attaques de nouvelle génération
- Et si les clients n’avaient plus le choix ?
Les plus consultés sur iTPro.fr
- Visibilité, réputation, clients : ce que les petites entreprises ne pourront plus déléguer en 2027
- IA souveraine : l’Europe avance, mais son interconnexion prend du retard
- Cloud public : la sécurité des données s’impose comme premier critère pour les agents publics
- Le champ de bataille des fournisseurs de services n’est plus l’IA, mais la confiance
Articles les + lus
Continuer avec Exchange Server : quelles conséquences ?
Raccourcis Réseau et Navigateur : le kit de Diagnostic des Professionnels IT
Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
Sécurité : une approche dans la durée avant tout
À la une de la chaîne Tech
- Continuer avec Exchange Server : quelles conséquences ?
- Raccourcis Réseau et Navigateur : le kit de Diagnostic des Professionnels IT
- Raccourcis PowerShell et Windows Terminal pour les Professionnels IT
- Commandes Windows 11 : le Guide des Outils accessibles avec Win + R
- Sécurité : une approche dans la durée avant tout
