Modellübergänge zwischen konzeptionellem Schema und Datenbankschema

Der Übergang vom konzeptionellen Schema ins Datenbankschema und umgekehrt wird als Modellübergang bezeichnet.

Grundsätzliches

Die Zusammenhänge der unabhängigen Schema-Ebenen werden durch Mapping-Verfahren erzeugt. Neben dem Standard-ER-DB-Mapping, das Abbildungen in beiden Richtungen erlaubt, steht auch ein automatisches ER-DB-Mapping zur Verfügung, das Entitäten initial in ein Datenbankmodell abbildet und die entstehenden DB-Elemente pflegt.

Die Abbildung der Elemente wird stets durch Mapping-Abhängigkeiten persistiert, die den Elementen im Datenbankschema gehören und als Ziel ein Element im ER-Schema haben. Das ER-Element ist das Anforderungselement und das DB-Element ist das Realisierungselement.

Das Erzeugen einer Mapping-Abhängigkeit sorgt dafür, dass am DB-Element vermerkt wird, dass es durch ein Mapping entstanden ist. Wird das Anforderungselement gelöscht und somit auch die Mapping-Abhängigkeit, kann durch diese Kennzeichnung erkannt werden, dass das DB-Element die Anforderung verloren hat. Diese Kennzeichnung unterscheidet es von Elementen, die im Zuge einer technischen Modellerweiterung als eigenständige DB-Elemente entstanden sind.

Der Übergang vom konzeptionellen Modell ins Datenbankmodell stellt den üblichen Ansatz dar, derjenige vom Datenbankmodell ins konzeptionelle Modell ist die Fortführung eines (initialen) Reverse Engineerings. Initiale Modellübergänge sind in der Regel 1:1-Übergänge. Innovator bietet für den Übergang vom konzeptionellen Modell ins Datenbankmodell ein automatisches ER-DB-Mapping an.

Das Zusammenführen von konzeptionellem Modell und Datenbankmodell sollte ausschließlich (initial) in Migrationsszenarien angewendet werden. Dabei kann sicher kein vollständiger Automatismus erwartet werden, manuelle Nacharbeit ist grundsätzlich notwendig.

Vergleich des Standard-ER-DB-Mappings mit dem automatischen ER-DB-Mapping

Als Entscheidungsgrundlage für die Auswahl des Mapping-Verfahren für die Abbildung eines konzeptionellen Modells in ein Datenbankmodell nutzen Sie die folgende Tabelle.

Tabelle: Vergleich des Standard-ER-DB-Mappings mit dem automatischen ER-DB-Mapping
Aspekt Standard-Mapping Automatisches Mapping
Zweck Befehle für Mapping und Pflege der DB-Elemente, individuell konfigurierbar Automatisches Mapping mit Ad-hoc-Pflege der DB-Elemente, nicht individuell konfigurierbar
Architektur Mappingverfahren sind als Engineering-Aktionen konfiguriert Integration im Modellserver
Individuelle Anpassbarkeit der Konfiguration mittels Model-to-Model Software Development Kit (M2M SDK) Änderungen und Bugfixes ausschließlich mit Innovator-Releases
Verwendung Manuell ausgeführt durch Menübefehle , die hochkonfigurierbare Engineering-Aktionen nutzen Automatisch ausgeführt durch Setzen eines Merkmals für Entitäten oder für ein Datenbankmodell
Namen Namensadapter können genutzt werden Namen im DB-Modell werden ausschließlich aus den Namen oder vorrangig den Kurznamen im Entity-Relationship-Modell gebildet
Die Namen im DB-Modell können vom Benutzer geändert werden. Der Modellserver erkennt, ob ein automatisch vergebener Name vom Benutzer geändert wurde. Geänderte Namen im DB-Modell bleiben bei Änderungen im ER-Modell erhalten. Die Namenspflege kann durch das Merkmal "Name auf Vorgabewert zurücksetzen" wieder aktiviert werden. Der Name gilt dann wieder als automatisch vergeben.
Mapping-Abhängigkeiten   Das automatische Mapping setzt bei allen erzeugten Mapping-Abhängigkeiten das Merkmal 'Automatische Pflege' auf 'ja' (im Folgenden Automapping-Abhängigkeit genannt). Nur solche Abhängigkeiten werden von den Algorithmen des automatischen Mappings berücksichtigt.
Abbildung von ER-Sichten auf DB-Views möglich keine Abbildung von ER-Sichten auf DB-Views
Abbildungen werden durch die Mapping-Regeln aus der Konfiguration bestimmt Abbildungen werden zum Teil durch die Mapping-Regeln aus der Konfiguration bestimmt

Spaltenreihenfolge in der abhängigen Datenbanktabelle beim automatischen Mapping

Die Spaltenreihenfolge in einer DB-Tabelle darf von der Reihenfolge der Attribute in der Entität abweichen. Sie wird durch das automatische Mapping nicht gepflegt.

Wenn ein Attribut in einer Entität durch Selektion eines Attributes direkt hinter dem Attribut erzeugt wird, dann wird die Spalte initial hinter der Spalte des selektierten Attributs erzeugt. Andernfalls wird eine neue Spalte immer am Ende der Tabelle angefügt.

Andere Modellübergänge

Einen ähnlichen Modellübergang gibt es zwischen multidimensionalem Modell und Datenbankschema. Das Mapping erlaubt Ihnen, bei der Modellierung des multidimensionalen Modells zu einer Hierarchie die entsprechenden Datenbank-Views zu erzeugen. Änderungen im einen Modell wirken sich durch das Mapping auch im anderen Modell aus.