Relationales Datenbank Design
Einleitung
Dieses Seminar behandelt die strukturierte und zukunftssichere Modellierung relationaler Datenbanken. Von der Anforderungsanalyse über das konzeptionelle Entity-Relationship-Modell bis hin zum physischen Schema erlernen die Teilnehmer, wie Datenstrukturen anomaliefrei, performant und skalierbar entworfen werden.
Zielgruppe / Voraussetzung
- Zielgruppe: Softwareentwickler, Datenanalysten, Systemarchitekten und Requirements Engineers.
- Voraussetzung: Allgemeines IT-Verständnis. SQL-Grundkenntnisse sind hilfreich.
Detaillierte Inhalte
Grundlagen der Datenmodellierung
- Der Datenbankentwurfsprozess: Konzeptionell, Logisch, Physisch
- Relationale Algebra und relationale Konzepte (Entitäten, Attribute, Tupel)
- Schlüsselkonzepte: Primärschlüssel (natürlich vs. künstlich/Surrogat), Fremdschlüssel, zusammengesetzte Schlüssel
Konzeptionelles Design
- Erstellung von Entity-Relationship-Modellen (ERM)
- Bestimmung von Kardinalitäten (1:1, 1:n, m:n)
- Auflösung von m:n-Beziehungen durch Assoziationstabellen (Junction Tables)
- Modellierung von optionalen und obligatorischen Beziehungen
Normalisierung und Logisches Design
- Anomalien bei Datenmanipulation (Insert, Update, Delete Anomalien)
- Die 1. Normalform (1NF): Atomarität von Attributen
- Die 2. Normalform (2NF): Volle funktionale Abhängigkeit
- Die 3. Normalform (3NF): Vermeidung transitiver Abhängigkeiten
- Boyce-Codd-Normalform (BCNF) und Ausblick auf höhere Normalformen
Physisches Design und Implementierung
- Mapping des logischen Modells auf ein physisches RDBMS
- Wahl der optimalen Datentypen (Speichereffizienz vs. Flexibilität)
- Durchsetzung von Datenintegrität durch Constraints (CHECK, UNIQUE, NOT NULL)
- Best Practices für Namenskonventionen (Tabellen, Spalten, Indizes)
Komplexe Modellierungsmuster
- Abbildung von Hierarchien und Baumstrukturen (Adjacency List, Nested Sets)
- Modellierung von Historisierung (Slowly Changing Dimensions)
- Das Entity-Attribute-Value (EAV) Muster: Einsatzgebiete und Gefahren
- Umgang mit polymorphen Assoziationen
Denormalisierung und Performance
- Bewusste Brüche der Normalisierung für Lese-Performance
- Unterschiede in der Modellierung: OLTP (Transaktionssysteme) vs. OLAP (Data Warehouses / Star-Schema)
- Caching-Strategien und vorberechnete Aggregationstabellen
Dauer: 2 Tage