Entity-Relationship-Diagramm
Ein Entity-Relationship-Diagramm ist ein Strukturdiagramm zur grafischen Darstellung (Modellierung) von Entitäten und deren Beziehungen. Sie erstellen damit ein normalisiertes redundanzfreies Modell Ihrer fachlichen Daten.
Entity-Relationship-Diagramme erstellen Sie komfortabel mit dem bewährten Modellierungstool von MID.
Innovator Enterprise Modeling Suite kostenlos testen.
Definition
Ein Entity-Relationship-Diagramm ist ein Strukturdiagramm zur grafischen Darstellung (Modellierung) von Entitäten und deren Beziehungen. Sie erstellen damit ein normalisiertes redundanzfreies Modell Ihrer fachlichen Daten.
Das Symbol zeigt ein Diagramm mit symbolischen Entitäten.
Verwendung
Das Diagramm des Entity-Relationship-Modells basiert auf dem klassischen Ansatz von Peter Pin-Shan Chen. Mit dem ER-Diagramm modellieren Sie ein Teilmodell des konzeptionellen Schemas. Dabei stellen Sie die Entitäten (Entity) als Knoten und die Beziehungen (Relationship) als Kanten dar. Die zulässigen Notationen der ER-Diagramme werden in den Anzeigeoptionen konfiguriert und im Diagramm angeboten.
Innovator bietet folgende Diagrammnotationen an:
-
Chen
Notation nach Peter Pin-Shan Chen mit (min,max)-Kardinalitäten
-
DSA
Notation gemäß Datenstrukturanalyse
-
James Martin
Notation nach James Martin, Bachmann und Odell (auch "Krähenfußnotation" genannt)
-
SERM
Notation gemäß der Strukturierten Entity-Relationship-Modellierung von Prof. Dr. Elmar J. Sinz
-
UML
Notation gemäß der Unified Modeling Language
-
IDEF1X
Notation gemäß IDEF1X-Standard (U.S.-Behördenstandard FIPS 184)
Der Hauptunterschied dieser Notationen ist die Darstellung der Beziehungen, deren Kardinaltiäten mit unterschiedlichen Grafiksymbolen oder formalen Texten an unterschiedlichen Positionen abgebildet werden. Die SERM-Notation ordnet die Entitäten quasihierarchisch von links nach rechts an.
Des Weiteren können Sichten als Knoten und ihre From-Klauseln als Kanten dargestellt werden.
Achtung
Die SERM-Notation ändert die Anordnung derjenigen Knoten im Diagramm, die bisher nicht SERM-konform angeordnet waren.
Lesendes Öffnen erzeugt diese SERM-Anordnung temporär, sie wird nicht gespeichert.
Elemente des Entity-Relationship-Diagramms
Knoten
Die folgenden Modellelemente können als Knoten in Entity-Relationship-Diagrammen dargestellt werden.
Symbol | Element | Beschreibung |
---|---|---|
Entität | Eine Entität ist die Menge gleichartiger Entitäten der zu modellierenden fachlichen Welt. Genauer wäre der Begriff Entitätsmenge, aber für eine konkrete Entität in dieser Menge ist der Begriff Instanz gebräuchlich. | |
Sicht | Eine Sicht fasst die Attribute einer oder mehrerer Entitäten in einer Tabelle zusammen. Dabei können die Zeilen einer Sicht redundante Daten enthalten. Als Oberbegriff für Entität und Sicht wird der Begriff Attributmenge verwendet. | |
Kombinierte Sicht Union-View |
Eine Sicht kann durch Unter-Sichten modelliert werden, die mit UNION, UNION ALL, INTERSECT oder EXCEPT und Klammerung kombiniert werden. |
|
Select-Statement Sub-Select wie View |
Ein Select ist als Select-Statement Teil eines Union-Views oder wird in Ausdrücken von View-Elementen als Sub-Select verwendet. |
|
Attribut | Die Attribute einer Entität beschreiben die Merkmale einer Instanz. | |
Primärer Schlüssel | Ein Schlüssel ist eine Untermenge der Attribute seiner Entität, anhand derer eine Instanz eindeutig identifiziert werden kann. Bleiben die Werte der Schlüsselattrribute über die komplette Lebensdauer ihrer Instanz zwingend unverändert, handelt es sich um einen sogenannten Schlüsselkandidaten. Aus der Menge der Schlüsselkandidaten wird der Primärschlüssel gewählt, der sich am besten für die Implementierung einer Beziehung durch einen Fremdschlüssel eignet. Hat eine Entität der realen Welt keinen Schlüsselkandidaten, wird meist ein künstlicher Schlüssel definiert, der ein extra dafür modelliertes Zahlenattribut enthält. | |
Alternativer Schlüssel | ||
Sichtattribut | Die Werte von Sichtattributen werden aus den Werten der verwendeten Attribute ermittelt. Dabei können auch Berechnungsausdrücke mit Funktionen verwendet werden. | |
Wertprüfung | Eine Wertprüfung schränkt die möglichen Werte von Attributen ein. Sie ist das Pendant zu einem SQL-Check-Constraint aus dem DB-Modell. | |
R-Typ | Ein R-Typ ist fachlich gesehen eine Beziehung. Diese Entitäten werden benötigt, um in einem Modell, das auf eine relationale Datenbank abgebildet werden soll, die 1. Normalform zu sichern. Klassischerweise sind dies m:n-Beziehungen. | |
Erweiterungen für multidimensionale Modellierung: | ||
Dimensionsentität |
In einem vollständigen Modell gibt es einen orthogonalen Ring in Bezug auf den Würfel, seine Würfeldimensionen und Faktenmengen. Dies bedeutet, dass die Dimension einer Würfeldimension eine unterste Dimensionsebene hat, die mit einer Dimensionsentität des Entity-Relationship-Modells verknüpft ist. Diese Dimensionsentität wird wiederum in einer Faktenmenge per Fremdschlüsselbeziehung referenziert. Und diese Faktenmenge wird vom Würfel über eine From-Klausel verwendet, so dass der Würfel seine Kennzahlen aus der Faktenmenge bezieht. Die Fremdattribute der Faktenmenge werden im Würfel als Dimensionsattribute angezeigt. |
|
Faktentität | ||
Dimensionsview | ||
Faktenview | ||
Erweiterungen für Data Vault: | ||
Hubentität | Eine Hubentität beschreibt ein Kernobjekt der Geschäftslogik (z.B. Produkt), das in der Regel sehr stabil ist, was zur Langlebigkeit des Datenmodells beiträgt. | |
Linkentität | Eine Linkentität stellt die Beziehungen zwischen den Geschäftsobjekten dar, z.B. zwischen Kunde und Produkt. | |
Satellitenentität | In der Satellitenentität werden alle Informationen gespeichert, die die Hubentität oder die Linkentität beschreiben. | |
Erweiterungen für NoSQL: | ||
NoSQL Schema | Dienen der Integration von unstrukturierten NoSQL-Daten. | |
NoSQL Group | ||
NoSQL Attribute |
Kanten
Kanten stellen in Entity-Relationship-Diagrammen die Beziehungen (Relationship) zwischen den Entitäten dar.
Symbol | Element | Beschreibung |
---|---|---|
1:C |
Jede Entität der ersten Entitätsmenge kann mit höchstens einer Entität der zweiten Entitätsmenge in Beziehung stehen. Jede Entität der zweiten Entitätsmenge steht mit genau einer Entität der ersten Entitätsmenge in Beziehung. |
|
1:M |
Jede Entität der ersten Entitätsmenge kann mit mindestens einer Entität der zweiten Entitätsmenge in Beziehung stehen. Jede Entität der zweiten Entitätsmenge steht mit genau einer Entität der ersten Entitätsmenge in Beziehung. |
|
1:MC |
Jede Entität der ersten Entitätsmenge kann mit beliebig vielen Entitäten der zweiten Entitätsmenge in Beziehung stehen. Jede Entität der zweiten Entitätsmenge steht mit genau einer Entität der ersten Entitätsmenge in Beziehung. |
|
C:C | Jede Entität der ersten Entitätsmenge kann mit höchstens einer Entität der zweiten Entitätsmenge in Beziehung stehen, und umgekehrt. | |
C:MC |
Jede Entität der ersten Entitätsmenge kann mit beliebig vielen Entitäten der zweiten Entitätsmenge in Beziehung stehen. Jede Entität der zweiten Entitätsmenge kann mit höchstens einer Entität der ersten Entitätsmenge in Beziehung stehen. |
|
M:M | Jede Entität der ersten Entitätsmenge steht mit mindestens einer Entität der zweiten Entitätsmenge in Beziehung, und umgekehrt. | |
M:MC |
Jede Entität der ersten Entitätsmenge kann mit beliebig vielen Entitäten der zweiten Entitätsmenge in Beziehung stehen. Jede Entität der zweiten Entitätsmenge steht mit mindestens einer Entität der ersten Entitätsmenge in Beziehung. |
|
MC:MC | Jede Entität der ersten Entitätsmenge kann mit beliebig vielen Entitäten der zweiten Entitätsmenge in Beziehung stehen, und umgekehrt. | |
Generalisierung | Die Generalisierungsbeziehung (kurz auch Generalisierung) verknüpft zwei Entitäten im Sinne von Ober- und Unterart. Hier werden oft auch die Präfixe Super und Sub für die über- bzw. untergeordnete Entität verwendet. | |
From-Klausel | Die From-Klausel referenziert eine Entität und ist in allen Select-Anweisungen erforderlich, in denen Daten aus Tabellen oder Sichten abgerufen werden. | |
Sub-Select | Legt eine neue Instanz des Elementtyps Sub-Select-From-Klausel an. |