Denormalisierung
Absichtlich Daten duplizieren, um Joins beim Lesen zu vermeiden. Ein Tausch: schnellere Abfragen gegen kompliziertere Schreibvorgänge und das Risiko, dass die Kopien auseinanderdriften.
Typische Formen sind ein zwischengespeicherter Zähler in der Elterntabelle (kommentar_anzahl), ein kopierter Name, damit ein Bericht nicht fünf Tabellen joinen muss, und eingebettete Dokumente in Dokumentendatenbanken. Die alte Faustregel lautet "normalisieren, bis es wehtut, denormalisieren, bis es funktioniert" — die Betonung liegt auf der Reihenfolge. Denormalisiere erst, wenn du zeigen kannst, dass ein Join das Problem ist, nicht vorbeugend. Materialisierte Sichten sind die kontrollierte Variante: Die Datenbank hält die Kopie für dich aktuell, statt dass dein Anwendungscode sich überall daran erinnern muss. Analytische Sternschemata sind von Anfang an denormalisiert, genau aus diesem Leistungsgrund.