Grundlagenserie Business Intelligence

Business Intelligence (Teil 3): Datenmodellierung – Relationale und Multidimensionale Modelle

Entity Relationship Modell

Eines der bekanntesten semantischen Datenmodelle ist das Entity Relationship Modell (ERM) von Peter Chen. Es wurde in den siebziger Jahren entwickelt und im Laufe der Zeit modifiziert und erweitert.

Das ERM dient zum einen in der konzeptionellen Phase der Anwendungsentwicklung der Verständigung zwischen Anwendern und Entwicklern, zum anderen in der Implementierungsphase als Grundlage für das Design der Datenbank. Mit ERM lassen sich operative Datenstrukturen gut modellieren. Auch mehrdimensionale Datenstrukturen, die in diesem Beitrag weiter unten vorgestellt werden, können damit gut abgebildet werden.

Im ER-Modell werden die Objekte der Modellwelt als „Entities“ und die Beziehungen der Objekte als „Relationships“ bezeichnet. Beide können Attribute aufweisen, die sie näher spezifizieren. Beispielsweise kann mit der Entity „Kunde“ das Attribut „Name“ und „Wohnort“ verknüpft sein. Allgemein üblich ist eine grafische Darstellung mit Rechtecken für die Entitites und deren Verbindung über Rauten für die Beziehungen. Die folgende Abbildung zeigt ein einfaches Modell einer CD-Kundendatenbank.

Entity Relationship Modell: Beispiel einer Kunden-Datenbank für Musik-CDs. (Quelle: Uni Tübingen)
Entity Relationship Modell: Beispiel einer Kunden-Datenbank für Musik-CDs. (Quelle: Uni Tübingen)

Die in einem Oval dargestellten Attribute sind über Kanten mit den Entities beziehungsweise Relationships verbunden. Die Kardinalitäten werden an den Beziehungskanten eingetragen. Die Kardinalität ist die mögliche Anzahl der an einer Beziehung beteiligten Entität. Zum Beispiel kann ein Kunde mehrere CDs kaufen (m) und eine bestimmte CD kann von mehreren Kunden gekauft werden (n).

Allerdings gibt es unterschiedliche Varianten des ER-Ansatzes mit unterschiedlicher Notation. Auf diese und weitergehenden Informationen zum ER-Modell kann an dieser Stelle nicht eingegangen werden. Ein ausführlicheres Beispiel mit Erläuterungen finden Sie hier.