Data-first ETL · SQL-nativ

Versteh deine Daten.
Den Rest schreiben wir.

DI2 generiert wartbare, lesbare und auditierbare ETL-Prozesse in reinem SQL — automatisch aus den Metadaten deines Quellsystems. Kein proprietärer Pipeline-Editor. Keine Black Box. Nur SQL, das dein Team versteht, reviewen und testen kann.

Der Unterschied

ETL ist nicht eine Frage der Technologie.

Welche Plattform, welche Engine, welcher Cloud-Anbieter. Dabei ist die eigentliche Frage eine andere: verstehst du die Daten, mit denen du arbeitest?

Tool-first

Die Pipeline entsteht im UI einer proprietären Plattform. Logik liegt in Konnektoren, Transformationen werden per Drag&Drop zusammengeklickt, Code existiert nur als Export. Reviews, Tests und Auditierbarkeit bleiben auf der Strecke — und mit jedem Tool-Wechsel beginnt die Arbeit neu.

TalendInformaticaDatabricksMatillionAWS Glue

Data-first

Der Prozess entsteht aus den Metadaten des Quellsystems: Tabellen, Spalten, Datentypen, Beziehungen. Daraus wird reines SQL erzeugt — versioniert, review-fähig, testbar. Das Ergebnis läuft in jeder SQL-Engine deiner Wahl, nicht in unserem Lock-in.

PostgreSQLSnowflakeBigQueryDuckDBSQL Server
Drei Prinzipien

Wartbar. Lesbar. Auswertbar.

Ein ETL-Prozess ist kein Einmalprojekt. Er muss ein Jahr später noch verstanden, erweitert und überprüft werden können — auch von jemandem, der nicht dabei war.

Wartbar

Jede Prozedur ist eine eigene, klar benannte SQL-Datei. Änderungen an einer Tabelle ziehen keinen UI-Klick-Marathon nach sich — sie sind ein Diff im Git-Repo.

Lesbar

Kein Custom-DSL, kein Drag&Drop-Artefakt. Reines SQL, das Data-Engineers und Analysten ohne Einarbeitung nachvollziehen können.

Auswertbar

Drei Protokoll-Ebenen — vom Gesamtlauf bis zum vollständigen Stacktrace. Ausführungsdauer, Schritt-Typ, Tabelle, verarbeitete Zeilen: jeder Lauf ist in SQL-Tabellen belegbar.

So funktioniert es

Von Metadaten zu Produktion — in fünf Schritten.

  1. 01
    Quelle anbinden

    Read-only-Zugriff auf das Schema des Quellsystems — Tabellen, Spalten, Typen, Keys.

  2. 02
    Metadaten scannen

    DI2 liest information_schema und baut daraus ein vollständiges Modell der Quelle.

  3. 03
    Metadaten anreichern

    Du ergänzt, was das DBMS nicht weiß: zulässige Werte, Wertebereiche, Business und Alternate Keys, Historisierungsregeln. Fachwissen wird zu Metadaten — nicht zu Kommentaren im Code.

  4. 04
    SQL generieren

    Drei Stages: Extraktion, Historisierung, Transformation. Die ersten beiden werden vollständig automatisch aus den Metadaten erzeugt. Die Transformationslogik in die Zielstruktur — DWH oder OLTP — bleibt bewusst Handarbeit: DI2 liefert das Gerüst, ihr schreibt die fachliche Logik.

  5. 05
    Orchestrieren

    Zwei Modi, ein Ergebnis: synchron direkt in SQL für einfache Ketten, asynchron über Python für parallele oder zeitgesteuerte Läufe.

Datenqualität

Qualität ist kein Feature. Sie ist das Produkt.

Datenqualität entsteht nicht durch ein Dashboard am Ende. Sie entsteht, wenn jeder Schritt eines ETL-Prozesses belegbar, reproduzierbar und auswertbar ist — und wenn fachliche Regeln (zulässige Werte, Wertebereiche, Business Keys) als Metadaten im Modell leben, nicht als Kommentare im Code.

DI2 protokolliert jeden Lauf auf drei Ebenen: vom Gesamtprozess bis zum vollständigen Stacktrace. Ausführungsdauer, Schritt-Typ, betroffene Tabelle, Anzahl verarbeiteter Datensätze — alles landet direkt in SQL-Tabellen. Reviewbar im Pull Request. Auswertbar per SELECT.

Fehler werden erkannt, bevor sie propagieren.

Ein dynamischer Prüfprozess validiert sämtliche extrahierten Daten gegen deine fachlichen Regeln — als WHERE-Klauseln, die wie alle anderen Regeln als Metadaten hinterlegt sind. Verletzt ein Datensatz eine Regel, landet er in einer Fehler-Tabelle — les- und auswertbar wie jede andere Tabelle — und wird aus der weiteren Verarbeitung ausgeschlossen. Kein stilles Durchreichen. Keine Überraschungen im DWH.

LVL 1

Prozess

Gesamtlauf: Start, Ende, Status, Dauer, Run-ID, Auslöser.

run_log
LVL 2

Schritt

Pro Prozedur: Typ (Extract / Historize / Transform), Zieltabelle, Zeilen gelesen & geschrieben, Dauer, Rückgabewert.

step_log
LVL 3

Detail & Stacktrace

Bei Fehlern: vollständiger SQL- und Prozeduraufruf-Stack, SQLSTATE, Meldung, Kontextvariablen — ohne Zugriff auf externe Logs.

error_log

Starte data-first. Nicht tool-first.

Wir schauen uns dein Quellsystem an — eine erste lauffähige Pipeline in PostgreSQL.

Under constructionDiese Seite befindet sich im Aufbau. Kontaktmöglichkeiten folgen in Kürze.