A priori et compte tenu du fonctionnement d'un SGBDR, la dénormalisation, c’est-à-dire la redondance de l'information, nuit aux performances. Il y a cependant quelques rares cas ou elle apporte un certain bénéfice. Or il est impossible de mesurer le bénéfice, et surtout la moins value apportée par la nécessaire augmentation
Ne dénormalisez jamais, sauf…
des temps de traitement des mises à jour (INSERT, UPDATE, DELETE) sans avoir éprouvé le modèle avec un volume de données qui représente une masse proche de celle qui sera réellement exploitée. Lisez la discussion que nous avons eue sur Internet à ce sujet34.
Elle est pleine d’enseignement et riche de contradictions. Mais elle converge sur un point : aucune dénormalisation, sans avoir prouvé le bénéficie absolu que l’on peut en tirer ! N’ayez donc aucune crainte : un modèle performant est un modèle parfaitement normalisé. Il n’y a qu’à l’épreuve du temps, et donc à l’augmentation concomitante du volume que l’on pourra déceler les éléments candidats à une dénormalisation, en tester la pertinence et modifier en conséquence le schéma. Mais s’il faut dénormaliser, autant que ce soit avec le maximum de précaution : évitez la redondance dont le calcul s’effectue sur le client.
Choisissez toujours un mécanisme de redondance qui garantisse l’intégrité de la base. En cette matière, le choix est large. Ma préférence, va dans l’ordre aux techniques suivantes : vues indexées, colonnes calculées indexées, procédures stockées remplaçant les requêtes directes (avec une gestion de la sécurité afin d’interdire ces dernières), trigger. Dans certains cas on pourra précalculer des données agrégées par exemple chaque nuit et compléter le résultat si besoin est, avec les seules données du jour à l’heure d’exécution de la requête.
Dans tous les cas, mesurez le gain de temps en lecture. S’il est inférieur à 2, il vaudrait mieux s’abstenir, car les pertes des temps de traitement des mises à jour risquent de devenir pénalisantes. À partir d’un gain de 10, allez-y franco35. Avec un gain de 1000, facile à obtenir avec une bonne vue indexée s’il y des calculs d’agrégats, vous aurez le statut de magicien ! Vous n’êtes pas encore convaincu de l’intérêt d’un modèle solide et bien normalisé ? Vous voulez discuter de la chose ? Alors n’hésitez pas à me joindre par courriel36 à SQLpro@club-internet.fr
Téléchargez cette ressource
Plan de sécurité Microsoft 365
Les attaquants savent comment prendre le contrôle de votre tenant Microsoft 365, et vous, savez-vous comment le reprendre en main ?
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Cybersécurité française 2026 : explosion des startups, ralentissement des scale-ups et virage stratégique de l’IA
- Le Cercle de l’Innovation décerne le Prix de l’Innovation du Public 2026
- Avec l’IA agentique, la robustesse des SI redevient stratégique
- Les erreurs du secteur bancaire dans son approche IA
Articles les + lus
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
La chaîne d’approvisionnement, point de rupture récurent du SI
Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
À la une de la chaîne Tech
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
- La chaîne d’approvisionnement, point de rupture récurent du SI
- Microsoft Build 2026 : contre-offensive des modèles maison face à OpenAI et Anthropic
