Grundlagen von Datenmodellen: ERM und Relationales Modell
Eingeordnet in Informatik
Geschrieben am in Deutsch mit einer Größe von 7,51 KB
Entity-Relationship Modell (ERM)
Datenmodell
Eine Reihe von Konzepten, die die Struktur einer Datenbank auf unterschiedlichen Abstraktionsstufen beschreiben können. Wir betrachten das System aus verschiedenen Sichten:
- Extern: Benutzersicht
- Global: Gemeinsame Sicht
- Intern: Computersicht
Ein Satz von Konzepten, Regeln und Konventionen, die es uns ermöglichen, reale Daten, die in der Datenbank gespeichert sind, zu beschreiben und zu manipulieren.
Entität
Ein Gegenstand, über den wir Informationen in der Datenbank speichern.
Entitätstyp
Die generische Struktur einer Entität.
Vorkommen einer Entität
Jede konkrete Ausprägung (Instanz) eines Entitätstyps. Identifiziert durch ihren Namen/Schlüssel.
Arten von Entitäten
- Reguläre (Starke) Entität: Vorkommen dieser Entität haben ihre eigene Existenz. (Grafische Darstellung: Rechteck)
- Schwache Entität: Jedes Vorkommen hängt von einem Vorkommen einer regulären Entität ab. (Grafische Darstellung: Doppeltes Rechteck)
Beziehung (Interaktion)
Eine Verbindung oder Korrespondenz zwischen Entitäten. Grafisch dargestellt durch eine Raute, die den Namen der Beziehung (oft ein Verb) enthält und mit den verbundenen Entitäten verbunden ist.
Grad der Beziehung
Die Anzahl der Entitätstypen, die an der Beziehung beteiligt sind. Kann einstellig (unär), binär oder ternär sein.
Korrespondenztyp und Kardinalität
Beschreibt, wie viele Vorkommen eines Entitätstyps an der Beziehung teilnehmen können.
Kardinalität
Die maximale und minimale Anzahl von Vorkommen eines Entitätstyps, die an einem Vorkommen der Beziehung beteiligt sein können.
Optionalität
Gibt an, ob alle Instanzen eines Entitätstyps an der Beziehung teilnehmen müssen. Wenn die minimale Kardinalität Null ist, ist die Teilnahme optional.
Attribute
Jede der Eigenschaften, die eine Entität oder Beziehung beschreiben.
Domäne
Die Menge der möglichen Werte, die ein Attribut annehmen kann.
Einfache und zusammengesetzte Attribute
- Einfach: Kann nicht weiter zerlegt werden (z. B. DNI/Personalausweisnummer).
- Zusammengesetzt: Kann in andere Attribute zerlegt werden (z. B. Name kann in Vorname und Nachname zerlegt werden).
Bezeichner (Schlüssel)
Ein Attribut oder eine Menge von Attributen, die jede Instanz einer Entität eindeutig unterscheiden. Es gibt mehrere Kandidaten.
Deskriptoren
Alle Attribute, die keine Bezeichner sind.
Mehrwertige Attribute
Attribute, die für eine Instanz einer Entität oder Beziehung mehrere Werte annehmen können.
Attribute von Beziehungen
Attribute, die nicht eindeutig einer einzelnen beteiligten Entität zugeordnet werden können, sondern die Beziehung selbst beschreiben.
Abhängigkeit von Existenz und Identifikation
Beziehungstypen, klassifiziert nach der Art der beteiligten Entitäten (regulär oder schwach).
Existenzabhängigkeit
Ein Vorkommen einer schwachen Entität kann nicht existieren, ohne dass das Vorkommen der regulären Entität existiert, von der sie abhängt. (Oft durch Kardinalität (1,1) auf der Seite der regulären Entität dargestellt).
Identifikationsabhängigkeit
Zusätzlich zur Existenzabhängigkeit kann ein Vorkommen einer schwachen Entität nicht nur durch ihre eigenen Attribute identifiziert werden, sondern benötigt den Schlüssel der regulären Entität, von der sie abhängt. (Wird oft durch Hinzufügen des Schlüssels der regulären Entität zum Schlüssel der schwachen Entität dargestellt. Grafisch oft durch eine gestrichelte Linie zur identifizierenden Beziehung und Hinzufügen von "(ID)" zum Namen der Beziehung in der Raute gekennzeichnet).
Verallgemeinerung und Vererbung
Verallgemeinerung
Die Art der Beziehung, die zwischen einem Supertyp (Oberklasse) und spezifischeren Subtypen (Unterklassen) existiert. Sie schafft eine Hierarchie, in der ein Supertyp in verschiedene Subtypen unterteilt wird. (Grafische Darstellung: Umgekehrtes Dreieck an der Verbindungslinie zwischen Supertyp und Subtypen).
Kardinalitäten: (1,1) beim Supertyp und (0,1) bei den Subtypen.
Vererbung
Attribute des Supertyps werden von den Subtypen geerbt.
Verallgemeinerung (Bottom-Up)
Wir beobachten, dass zwei oder mehr Entitäten mehrere Attribute und/oder Beziehungen teilen. Daraus schließen wir auf die Existenz einer übergeordneten Entität (Supertyp).
Spezifikation (Top-Down)
Es scheint, dass eine Entität bestimmte Attribute und/oder Beziehungen hat, die nur in einigen Fällen sinnvoll sind, in anderen jedoch nicht. Es ist zweckmäßig, Subtypen zu definieren.
Arten der Verallgemeinerung
Totale Verallgemeinerung
Jede Instanz des Supertyps ist eine Instanz eines der Subtypen. Die Vereinigung der Instanzen der Subtypen bildet den Supertyp.
Partielle Verallgemeinerung
Instanzen des Supertyps müssen nicht zu einem der Subtypen gehören. Die Vereinigung der Instanzen der Subtypen ist eine echte Teilmenge der Instanzen des Supertyps.
Disjunkte Verallgemeinerung
Jede Instanz des Supertyps kann höchstens eine Instanz eines Subtyps sein. Der Schnittpunkt der Instanzen der Subtypen ist leer.
Überlappende Verallgemeinerung
Jede Instanz des Supertyps kann Instanz mehrerer Subtypen sein. Der Schnittpunkt der Instanzen der Subtypen kann nicht leer sein.
Das Relationale Modell
Domäne
Die Menge aller möglichen Werte, die ein Attribut annehmen kann.
Tupel (Zeile)
Eine Zeile in einer Tabelle (Relation), bestehend aus Werten für die Attribute (Spalten).
Kardinalität (Anzahl der Zeilen)
Die Anzahl der Tupel (Zeilen) in einer Relation.
Grad (Anzahl der Spalten)
Die Anzahl der Attribute (Spalten) in einer Relation.
Schlüssel im Relationalen Modell
Ein Attribut oder eine Menge von Attributen, die ein Tupel eindeutig identifizieren.
Primärschlüssel
Ein Attribut oder die kleinste Menge von Attributen, die ein Tupel eindeutig identifizieren. Es kann nur einen Primärschlüssel pro Tabelle geben. Dies beinhaltet oft die automatische Erstellung eines Primärindex durch das Datenbanksystem.
Kandidatenschlüssel
Ein Attribut oder die kleinste Menge von Attributen, die als Primärschlüssel ausgewählt werden könnten. Alle Kandidatenschlüssel, die nicht als Primärschlüssel gewählt werden, werden als alternative Schlüssel bezeichnet.
Integritätsregeln
Wichtige Regeln zur Gewährleistung der Datenkonsistenz:
- Regel 1: Primärschlüssel (Entitätsintegrität)
Der Inhalt des Primärschlüssels darf niemals Null sein und muss eindeutig sein. - Regel 2: Fremdschlüssel (Referentielle Integrität)
Wenn ein Attribut oder eine Menge von Attributen in einer Relation R2 als Fremdschlüssel definiert ist und auf den Primärschlüssel einer Relation R1 verweist, dann muss jeder Wert dieses Fremdschlüssels entweder in R1 als Primärschlüsselwert existieren oder Null sein. Dies ermöglicht die Validierung der in der Datenbank enthaltenen Daten. Ein Fremdschlüssel erstellt in der Regel einen sekundären Index.