Datenbankansicht¶
Übersicht¶
Die DATAMIMIC Datenbankansicht ist der zentrale Arbeitsbereich für metadatenbasierte Artefaktgenerierung aus relationalen Datenbanken.
Sie kombiniert Scope-Auswahl, Abhängigkeitsplanung, Weighting-Vorbereitung, Schema-Drift-Sichtbarkeit und Erstellungsaktionen in einer Ansicht.
Ab 3.1.0 erfolgt die Generierung eines DATAMIMIC-Modells aus Datenbank-Metadaten über die Datenbankansicht und nicht mehr über den Editor-Dateifluss.
Ab 3.2.0 ist dieser Ablauf in dedizierten Database-Workbench-Tabs (Planning, Weighting, Schema history) mit einer dedizierten Modellkonfiguration organisiert.
Ab 3.5.0 ist die Datenbankansicht Teil der Workbench (Database-Modus): Wähle dort eine SQL-Datenbankumgebung aus. MongoDB-Collections und Object Storage stehen als weitere Workbench-Modi bereit.
Das erzeugte Modell wird als Projektdatei gespeichert und im Editor geöffnet. Es wird weder automatisch in datamimic.xml eingebunden noch ausgeführt.
Reifegrad und Erwartungsmanagement¶
Die metadatenbasierte Modellerstellung in der Datenbankansicht wird aktiv weiterentwickelt.
Betrachte erzeugte Artefakte und Empfehlungen als starken Startpunkt, aber nicht als finales, produktionsfertiges Ergebnis.
- Manuelle Prüfung und Nachjustierung bleiben erforderlich, insbesondere bei komplexen Relationships und großen produktiven Schemata.
- Empfehlungsergebnisse hängen von Metadatenqualität, Beziehungsqualität und projektspezifischen Maskierungsanforderungen ab.
- Nutze Mark as personal data für eine explizite manuelle Personal-Data-Markierung und Remove manual mark, um nur diese Markierung zu entfernen. Empfehlungen bleiben Prüfhilfen und sind keine Katalogregeln.
Geplante Ausbaufelder sind:
- erweiterte Override-Möglichkeiten für Empfehlungsentscheidungen,
- stärkerer Support für projekt- und umgebungsspezifische Aliases (Generatoren, Entity-Attribute, PII-Feld-Aliases),
- unterstützte Voranonymisierungs-Flows auf Basis hochgeladener Spezifikationen für große Metadatenstrukturen.
Vorbedingungen¶
- Erstelle eine Datenbank-Umgebung.
- Führe Refresh metadata snapshot für diese Umgebung aus.
- Wenn Metadaten veraltet oder inkonsistent sind, nutze Reset metadata snapshot und danach erneut Refresh metadata snapshot.
Dieser Reset/Rescan-Flow ist der unterstützte Weg, um Modell-Eingaben nach Schemaänderungen zu aktualisieren.
Unterstützte relationale Datenbanken¶
- PostgreSQL
- Oracle
- Weitere Systeme, sofern in deiner Instanz aktiviert
Zentrale Funktionen¶
Transparenz für Umgebung, Schema, Tabellen und Spalten¶
- Wähle eine Umgebung aus dem Dropdown.
- Durchsuche Tabellen und Spalten mit klarer Strukturansicht.
- Nutze schemaqualifizierte Tabellennamen (wo verfügbar), um Mehrdeutigkeiten zu vermeiden.
- Nutze den Schema-Filter in der Sidebar, um große Tabellenlisten schnell einzugrenzen.
Metadaten-Scan-Scope (alle zugreifbaren Schemata)¶
- Refresh metadata snapshot nutzt die Datenbank als Scope und reflektiert alle Schemata, auf die der konfigurierte Benutzer zugreifen kann.
- Das in der Umgebung konfigurierte Schema wird als Default-Schema für nicht qualifizierte Namen verwendet.
- Nicht zugreifbare Schemata werden im Best-Effort-Verhalten übersprungen und im Task-Log vermerkt.
- Der größere Metadaten-Scope verbessert die Erkennung von schemaübergreifenden Beziehungen für Plan Subset und metadatenbasierte Artefakt-Generierung.
Subset-Auswahl und Bulk-Aktionen¶
- Wähle Tabellen und Spalten für dein Modell-Subset.
- Nutze Alle auswählen / Alle abwählen, um Selektionen schnell zu setzen oder zurückzusetzen.
- Die Tabellen-Checkbox ändert den Modell-Scope; das benachbarte Tabellen-Steuerelement öffnet die Spalten, ohne den Scope zu ändern.
- Nach erfolgreicher Subset-Planung prüfst du die geplanten Tabellen mit Previous und Next.
Plan Subset (Relationship Closure)¶
- Führe Plan Subset aus, um Tabellenbeziehungen und Foreign-Key-Abhängigkeiten zu analysieren.
- Die benötigte Closure wird für referenziell konsistente Generierung automatisch in den Scope übernommen.
- Nach der Planung zeigt die Tabellenliste in der Sidebar nur noch IN SCOPE-Tabellen.
- Nutze Reset im Planning-Schritt, um den aktiven Subset-Snapshot zu invalidieren, bevor du einen neuen Root-Scope wählst.
- Configure model wird erst aktiv, nachdem Plan subset für den aktuellen Scope ein frisches, prüfbares Validierungsergebnis geliefert hat.
PII-Vorauswahl¶
Für ein De-identification model kann der Wizard Personal-Data-Kandidaten im geplanten Scope anhand des Projekt-Schwellenwerts vorauswählen. Prüfe und passe die resultierende Auswahl vor dem Erstellen an.
Database-Workbench-Tabs¶
- Planning: Subset-Closure planen und Abhängigkeiten vor der Generierung validieren.
- Weighting: Weighting-Scope aus gewählten Tabellen/Spalten aufbauen und Weighting-Dateien erzeugen.
- Schema history: Schema-Drift und Snapshot-Änderungen der Metadaten nachvollziehen.
Modell aus dem Planning-Tab konfigurieren¶
Nutze Configure model unter Generate artifacts nach der Planung:
| Modelltyp | Verhalten für Quelle und Ziel |
|---|---|
| Synthetic data model | Liest die Metadaten der Quelldatenbank und schreibt nicht in eine Ziel-Datenbank. |
| De-identification model | Liest Quelldaten und schreibt de-identifizierte Daten in die explizit gewählte Ziel-Datenbank. |
| ML training model | Liest die Metadaten der Quelldatenbank und schreibt nicht in eine Ziel-Datenbank. |
Der Wizard speichert die erzeugte XML-Datei und öffnet sie im Editor. Entscheide selbst, ob du sie aus datamimic.xml komponieren möchtest; die Include-Referenz beschreibt die XML-Syntax.
Relationship-Quelle für Referenzen¶
Beim Erstellen eines datenbankbasierten Modell-Artefakts kannst du steuern, wie <reference>-Werte aufgelöst werden:
| Modus | Verwenden, wenn | Einschränkungen |
|---|---|---|
database |
Parent-Key-Reuse aus echten Source-DB-Daten erfolgen soll (source + sourceType) |
In allen DB-Builder-Modes unterstützt. |
weighting_files |
Vollsynthetische FK-Auswahl über Weighting-Dateien unter data/ gewünscht ist (.wgt.csv / .wgt.ent.csv) |
Nur für Modellerstellung mit builder_mode=synthetic; .wgt.csv ist auf ein Ziel-Feld begrenzt. |
Das EE-eigene reference-Element zeigt die exakten erzeugten XML-Formen und Mapping-Semantik. Die Platform verantwortet nur die obigen Auswahlen und übergibt sie an die Modellgenerierung.
Weighting-Dateien aus Metadaten erstellen (3.2.0)¶
- Wechsle zu Database workbench → Weighting, um Weighting-Artefakte aus Metadaten zu erzeugen.
- Wähle genau eine Tabelle und mindestens eine Spalte:
- 1 ausgewählte Spalte →
.wgt.csv - 2+ ausgewählte Spalten →
.wgt.ent.csv - Sampling-Optionen:
sample_size(Standard:1000)sampling_mode:deterministicoderfreshinclude_nulls: NULL-Werte als explizite Klasse ein-/ausschließen- Der Weighting-Wert wird als normalisierter Faktor (
count / sampled_rows) gespeichert, damit Verteilungen zwischen unterschiedlichen Sample-Größen vergleichbar bleiben.
Schema History und Drift-Sichtbarkeit¶
- Nutze Database workbench → Schema history, um Metadaten-Drift zwischen Snapshots zu prüfen.
- Die Drift-Details (geänderte Tabellen/Spalten) helfen zu entscheiden, ob Subset-Planung oder Neugenerierung notwendig ist.
Nach der Auswahl deines Subsets:
Modell konfigurieren¶
- Führe Plan subset aus und prüfe Abhängigkeiten.
- Klicke Configure model.
- Wähle Synthetic data model, De-identification model oder ML training model.
- Setze die Quelle und für ein De-identification-Modell eine Ziel-Datenbank.
- Wende optional den Personal-Data-Preselect an, vergib den Modell-Dateinamen und konfiguriere bei Bedarf Relationship-Quelle oder schemaqualifizierte Namen.
- Prüfe und erstelle. Die XML-Datei öffnet sich im Editor; sie wird weder automatisch eingebunden noch ausgeführt.
Von einem ML-Training-Modell zur ML-Generator-Ansicht¶
Nach dem Erstellen eines ML-Training-Modells in der Datenbankansicht:
- Führe das erzeugte DSL-Modell aus, damit
<ml-train>ML-Generator-Versionen trainiert und persistiert. - Öffne die ML-Generator-Ansicht.
- Wähle das erzeugte Modell und prüfe KPI-/Qualitätsstatus.
- Wähle eine Version und setze sie bei Freigabe als Default.
- Nutze das Modell in der DSL mit
source="ml://<model_name>".
Bei großen Trainings-Scopes kann der Lauf deutlich länger dauern und mehr Runtime-Ressourcen benötigen (CPU/RAM und je nach Setup auch GPU-Worker).
Weighting-Datei erstellen¶
- Wähle genau eine Tabelle und die gewünschten Spalten in der Datenbankansicht.
- Öffne den Weighting-Tab.
- Klicke Create weighting.
- Setze Dateiname und Sampling-Optionen (Sample-Größe, Modus, NULL-Handling).
- Prüfe und erstelle:
.wgt.csvfür Single-Column-Weighting.wgt.ent.csvfür Multi-Column-Entity-Weighting
Für einen vollständigen Ablauf siehe Automatisches Generieren eines Modells aus einer Datenbank.