L’objectif de cet article est de vous présenter un process particulier appelé Ghost Cleanup, qui joue un rôle très important dans le cycle de vie d’une base de donnée, mais reste néanmoins très peu connus.
Guide Delete et Ghost Records
Mais pour bien comprendre son rôle, il est nécessaire de commencer par regarder ce qui ce passe derrière l’instruction DELETE, et se concentrer en particulier sur les Ghost records.
Qu’est-ce qu’un Ghost record ?
Contrairement à ce que l’on pourrait imaginer, lorsque l’on supprime des enregistrements d’une table contenant un ou plusieurs Index (cluster ou non cluster) à l’aide de l’instruction DELETE, les enregistrements ne sont pas directement supprimés des pages d’index. (Mon propos ne concerne donc pas les heap pour lesquels les enregistrements sont effectivement directement supprimés).
Une fois l’instruction DELETE envoyée, un bit est tout d’abord positionné sur les enregistrements ciblés pour simplement les marquer comme étant à supprimer. De la même manière, la base elle-même, la page PFS gérant l’espace comprenant ces enregistrements ainsi que les pages d’index correspondantes sont identifiées comme contenant des enregistrements eux-mêmes marqués pour suppression.
En parallèle, une tâche d’arrière-plan qui se déclenche à intervalle régulier, gérée directement par le moteur, va passer en revue toutes les bases précédemment identifiées, puis, pour chacune d’entre elles, va scanner les pages PFS et enfin les pages d’index marquée afin de procéder à la suppression des enregistrements concernés par l’instruction DELETE. Il est important de noter que lors de cette opération, seuls les enregistrements dont la transaction est terminée seront physiquement supprimés. Les autres restent lockés par la transaction et échappent à la suppression définitive.
Vous l’aurez compris : les enregistrements marqués comme devant être supprimés sont appelés Ghost Record, la tâche d’arrière-plan chargée de les supprimer est le Ghost Cleanup.
Ce mécanisme a été développé afin d’améliorer les performances de l’instruction DELETE de deux manières :
– Accélération de la validation (COMMIT) de l’instruction DELETE, car les enregistrements ne sont pas physiquement effacés. Les opérations de suppression physique des enregistrements dans les pages d’index, de mise à jour des unités d’allocation etc.. sont fait de manière asynchrone, ultérieurement, au moment du passage du Ghost Cleanup.
– Accélération de l’annulation (ROLLBACK) de l’instruction DELETE : il suffit de supprimer les différents marqueurs positionnés au moment du DELETE, sans avoir à réécrire les données, pour annuler la transaction.
Et donc plus globalement, ce mécanisme permet effectivement d’alléger la charge en I/O au moment du DELETE, en cas de validation (COMMIT) comme en cas d’annulation (ROLLBACK)
Attachons nous maintenant à l’aspect concret de ce mécanisme : peut-on tracer son activité ? Comment utiliser cette information dans la pratique ?
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
- Dark Web : où sont vos données dérobées ?
- L’utilisation des données pour survivre !
- Les projets d’intégration augmentent la charge de travail des services IT
- 10 grandes tendances Business Intelligence
- Stockage autonome, Evolutivité & Gestion intelligente, Pure Storage offre de nouvelles perspectives aux entreprises
Les plus consultés sur iTPro.fr
- France : la maturité data devient le moteur du retour sur investissement de l’IA
- Cloud et IA : une maturité en retard face à l’explosion des usages
- On ne peut pas gouverner ce qu’on ne peut pas voir : pourquoi la visibilité doit-elle passer avant la gouvernance en matière de sécurité des identités ?
- L’IA amplifie les risques sur les API
Articles les + lus
ADI, l’infrastructure de données de Scality pensée pour l’ère de l’IA et de la souveraineté
Faire évoluer la souveraineté des données du statut d’ambition politique à son application opérationnelle
Fuites de données : la France, 2ème pays le plus touché au monde début 2026
Redéfinir la confiance à l’ère de l’IA agentique : les entreprises sont-elles prêtes pour le SOC autonome ?
Les défaillances des pipelines de données pèsent lourdement sur la performance des grandes entreprises
À la une de la chaîne Data
- ADI, l’infrastructure de données de Scality pensée pour l’ère de l’IA et de la souveraineté
- Faire évoluer la souveraineté des données du statut d’ambition politique à son application opérationnelle
- Fuites de données : la France, 2ème pays le plus touché au monde début 2026
- Redéfinir la confiance à l’ère de l’IA agentique : les entreprises sont-elles prêtes pour le SOC autonome ?
- Les défaillances des pipelines de données pèsent lourdement sur la performance des grandes entreprises
