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
![Comment lutter efficacement contre le Phishing ?](https://www.itpro.fr/wp-content/uploads/2024/07/Special-Report-Eviden-Securite-Phishing-Juillet-2024.png)
Comment lutter efficacement contre le Phishing ?
Dans un environnement cyber en constante mutation, le phishing évolue vers des attaques toujours plus sophistiquées combinant IA, automatisation et industrialisation. Une réalité complexe qui exige des mesures de sécurité avancées et repensées au-delà de l’authentification multifacteur. Découvrez les réponses technologiques préconisées par les experts Eviden et les perspectives associées à leur mise en œuvre.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Menace cyber lors des Jeux Olympiques et Paralympiques 2024
- CyberArk sécurise les identités humaines et machines avec CORA AI
- La généralisation de l’authentification par QR codes et les cyber-risques associés
- Intégrer l’IA dans son service client : les écueils à éviter pour l’IT et les métiers
- Microsoft Patch Tuesday Juillet 2024
![Revue Smart DSI](https://www.itpro.fr/wp-content/uploads/2024/07/SMART-DSI-Numero-34-Juin-2024.jpg)