Zum Inhalt springen

Daten­pipe­lines & Integration

Berichte brauchen Daten aus Tracking, ERP, CRM, Shop und Dateien an einem Ort, aktuell und geprüft. Oft hängt das an manuellen Exporten und Skripten, die nur eine Person kennt. Wir ersetzen das durch Pipelines, die automatisch laufen, ihre Daten prüfen und im Betrieb überwacht werden.

Ein Bericht über Umsatz je Kanal braucht Daten aus mehreren Systemen: Tracking-Ereignisse, Aufträge im ERP, Kontakte im CRM, Bestellungen im Shop, dazu Dateien und Schnittstellen externer Anbieter. Zusammengeführt wird das oft über manuelle Exporte oder einzelne Skripte, die nur eine Person kennt. Fällt eines aus, bemerkt man es erst, wenn im Bericht Zahlen fehlen.

Spätestens dann lohnt sich der Umbau, wenn nach einem Fehler jemand mühsam herausfinden muss, welche Daten fehlen oder doppelt sind, wenn sich eine Schnittstelle ändert und mehrere Berichte gleichzeitig brechen oder wenn die Ladezeiten nicht mehr ins Zeitfenster passen. Wie das Ziel der Daten aufgebaut ist, mit Schichten und Historisierung, beschreiben wir unter Data Warehouse. Hier geht es um den Weg dorthin.

Was auf dem Weg von der Quelle zum Ziel passiert

Eine Pipeline holt Daten aus den Quellen, legt sie im Ziel ab, bereinigt und vereinheitlicht sie und bereitet sie für die Auswertung auf. Das Ziel ist meist ein Data Warehouse oder Lakehouse, manchmal auch eine Anwendung, die die Daten direkt nutzt. Ein Orchestrator steuert Reihenfolge, Zeitpläne und Wiederholungen, und automatische Prüfungen sichern bei jedem Lauf ab, dass die Daten stimmen und rechtzeitig da sind. Tracking-Daten sind dabei eine Quelle unter mehreren. Dieselben Pipelines können aufbereitete Daten auch zurück in operative Systeme wie das CRM spielen (Reverse ETL).

ETL oder ELT, Batch oder Streaming

ETL und ELT

Bei ETL werden Daten vor dem Laden umgewandelt, bei ELT zuerst roh geladen und im Ziel transformiert. In Cloud-Plattformen ist ELT üblich, weil die Rechenleistung dort vorhanden ist und die Rohdaten für spätere Fragen erhalten bleiben. ETL bleibt sinnvoll, wenn Daten schon vor dem Laden bereinigt oder maskiert werden müssen.

Batch und Streaming

Beim Batch werden Daten in Intervallen geladen, etwa täglich oder stündlich. Das ist einfach zu betreiben und für die meisten Berichte ausreichend. Streaming verarbeitet Ereignisse laufend, sodass sie nach Sekunden bis Minuten bereitstehen. Das lohnt sich, wenn Aktualität entscheidend ist, etwa bei Überwachung oder operativen Dashboards, und es kostet im Betrieb spürbar mehr. Wir fragen deshalb zuerst, wie oft der Bericht gelesen wird. Wird er einmal am Tag angesehen, ist Echtzeit verschwendet.

Für Streaming braucht es eine Plattform für Ereignisströme. Apache Kafka ist hier weit verbreitet, auch als verwalteter Dienst, und die großen Cloud-Anbieter haben eigene Dienste dafür.

Änderungen statt Komplettabzug

Statt eine ganze Tabelle immer wieder zu lesen, überträgt Change Data Capture nur die Änderungen aus dem Protokoll der Datenbank. Das entlastet das Quellsystem und macht auch Löschungen sichtbar. Debezium ist ein verbreitetes Open-Source-Werkzeug dafür. Ein Komplettabzug bei jedem Lauf belastet Quelle und Kosten oft unnötig, wo ein inkrementelles Verfahren reichen würde.

APIs und Dateien

Bei Schnittstellen und Dateien sind Seitenlimits, Abfragegrenzen, Authentifizierung und Strukturänderungen die typischen Hürden. Eine Pipeline muss damit umgehen können, ohne dass ein Lauf stillschweigend unvollständig bleibt.

Orchestrierung und Werkzeuge

Ein Orchestrator startet Läufe nach Zeitplan oder durch ein Ereignis, hält Abhängigkeiten ein, wiederholt fehlgeschlagene Schritte, erlaubt das Nachladen vergangener Zeiträume und meldet Fehler. Plattformunabhängige Open-Source-Orchestratoren beschreiben Abläufe als Python-Code. Apache Airflow ist hier der Standard.

Die großen Datenplattformen bringen ihren eigenen Orchestrator mit, Microsoft Fabric etwa Data Factory. Wer ohnehin auf einer solchen Plattform arbeitet, braucht oft kein zusätzliches Werkzeug.

Für gängige Quellen gibt es fertige Connectors, verwaltet oder als Open Source. Für Quellen ohne Connector lassen sich Pipelines mit einer Python-Bibliothek wie dlt als Code schreiben. Die Transformation im Ziel läuft bei vielen Teams über dbt. Weil Anbieter Datenübernahme, Transformation und Orchestrierung zunehmend in einem Produkt bündeln, bauen wir so, dass sich einzelne Werkzeuge austauschen lassen.

Qualität sichern: Prüfungen und Data Contracts

Eine Pipeline, die schnell läuft, aber falsche Zahlen liefert, schadet mehr als eine langsame. Bei jedem Lauf prüfen wir deshalb automatisch, ob Spalten und Datentypen stimmen und Pflichtfelder gefüllt sind, ob Schlüssel doppelt vorkommen und jede Bestellung einen passenden Kunden hat, ob Mengen und Summen im erwarteten Bereich liegen und die Daten rechtzeitig eingetroffen sind. Dazu kommt der Abgleich mit dem Quellsystem: Stimmen die Summen im Ziel mit denen der Quelle überein?

Zusätzlich helfen Data Contracts, also eine schriftliche Vereinbarung zwischen der Stelle, die Daten liefert, und denen, die sie nutzen: Struktur, Bedeutung, Qualitätsregeln, Aktualität, Zuständigkeit und der Umgang mit Änderungen. Für die Beschreibung gibt es offene Formate, etwa den Open Data Contract Standard des Projekts Bitol unter dem Dach der Linux Foundation. Wird der Vertrag automatisch geprüft, fällt eine geänderte Schnittstelle auf, bevor Berichte brechen. Bei einem Verstoß stoppt die Pipeline, oder die betroffenen Daten werden getrennt abgelegt und gemeldet.

Was im Betrieb den Unterschied macht

Ob eine Pipeline verlässlich ist, zeigt sich nach dem ersten Fehler. Ein Lauf muss bei Wiederholung dasselbe Ergebnis liefern (Idempotenz). Das gelingt, indem Daten per Abgleich über Schlüssel oder durch Ersetzen ganzer Zeiträume geschrieben werden und nicht einfach angehängt. Vergangene Zeiträume müssen sich gezielt nachladen lassen, zum Beispiel nach einem Fehler oder einer geänderten Logik. Ohne das sind nach einem Ausfall Daten doppelt oder fehlen, und die Korrektur geschieht von Hand.

Kurzzeitige Störungen werden mit Wartezeit automatisch wiederholt. Daten, die nicht verarbeitet werden konnten, landen in einer Ablage zur Prüfung, statt den ganzen Lauf zu stoppen oder unbemerkt zu verschwinden. Laufzeiten, Datenmengen, Aktualität und Fehler werden erfasst, und Alarme gehen an die zuständige Person und nicht an ein Postfach, das niemand liest. Alarme ohne Zuständigkeit sind einer der häufigsten Gründe, warum Fehler tagelang liegen bleiben.

Eine Quelle, die eine Spalte umbenennt, ist der klassische Fall für einen Fehler, der erst im Bericht auffällt. Strukturprüfungen am Eingang fangen das ab. Bei den Kosten, die oft nach Datenmenge, Rechenzeit oder Anzahl der Läufe abgerechnet werden, helfen inkrementelles Laden, sinnvolle Intervalle und ein Blick auf den Verbrauch.

Was es bringt

  • Ein Ziel für alle Quellen

    Tracking-, CRM-, ERP- und Shop-Daten kommen automatisch an derselben Stelle an, statt in Tabellen zusammengeklebt zu werden.

  • Fehler fallen vor dem Bericht auf

    Automatische Prüfungen erkennen fehlende oder fehlerhafte Daten, bevor jemand falsche Zahlen im Dashboard sieht.

  • So aktuell wie nötig

    Batch oder Streaming: Die Daten sind so frisch, wie der jeweilige Anwendungsfall es verlangt, und nicht frischer als nötig.

  • Ausfälle bleiben nicht unbemerkt

    Monitoring und Alarme melden, wenn Daten ausbleiben, und Läufe lassen sich wiederholen, ohne dass etwas doppelt gezählt wird.

Plattformen & Tools

Wir sind an keinen Hersteller gebunden und arbeiten mit dem, was im Unternehmen schon läuft. Die Liste ist eine Auswahl.

  • Apache Airflow
  • Dagster
  • Microsoft Fabric Data Factory
  • Databricks Lakeflow
  • Fivetran
  • Airbyte
  • dlt
  • dbt
  • Debezium
  • Apache Kafka
  • Azure Event Hubs
  • Amazon Kinesis

So gehen wir vor

  1. Quellen und Anforderungen klären

    Welche Quellen gibt es, wie aktuell müssen die Daten sein, wer nutzt sie, und wo hakt es heute?

  2. Verfahren und Werkzeuge wählen

    Ladeverfahren, Orchestrierung und Werkzeuge richten sich nach Datenmenge, Aktualität und dem, was das Team später selbst betreiben kann.

  3. Als Code bauen, mit Prüfungen

    Die Pipelines liegen versioniert im Repository, mit automatischen Qualitätsprüfungen und Tests.

  4. Betrieb mit klarer Zuständigkeit

    Alarme gehen an eine benannte Person, und für jeden Fehlerfall ist festgelegt, wer was tut.

Häufige Fragen

Was ist eine Datenpipeline?
Ein automatisierter Ablauf, der Daten aus Quellen wie ERP, CRM, Shop oder Tracking holt, aufbereitet und an ein Ziel wie ein Data Warehouse liefert. Dazu gehören meist auch Prüfungen, Zeitplanung und Überwachung.
Was ist der Unterschied zwischen ETL und ELT?
Bei ETL werden Daten vor dem Laden umgewandelt, bei ELT zuerst roh geladen und dann im Zielsystem transformiert. In Cloud-Umgebungen ist ELT meist die übliche Wahl, weil die Rechenleistung im Ziel ohnehin vorhanden ist. ETL bleibt sinnvoll, wenn Daten vor dem Laden bereinigt oder maskiert werden müssen.
Brauchen wir wirklich Echtzeit-Daten?
Nicht immer. Für viele Berichte reicht eine tägliche oder stündliche Aktualisierung. Streaming lohnt sich bei Anwendungsfällen, in denen Minuten zählen, etwa bei Betrugserkennung, Überwachung oder operativen Dashboards. Es erhöht den Aufwand im Betrieb, deshalb entscheiden wir das pro Anwendungsfall.
Was bedeutet Change Data Capture?
Change Data Capture liest Änderungen aus dem Änderungsprotokoll einer Datenbank und überträgt nur das, was sich geändert hat. Das belastet das Quellsystem weniger als wiederholte Komplettabzüge und macht Löschungen sichtbar.
Welches Werkzeug passt für Datenintegration und Orchestrierung?
Das hängt von Datenplattform, Kenntnissen im Team und Anzahl der Quellen ab. Wer ohnehin auf einer Plattform wie Microsoft Fabric oder Databricks arbeitet, nimmt meist deren eigene Werkzeuge. Plattformunabhängige Orchestratoren lohnen sich bei mehreren Zielsystemen, und für Standardquellen gibt es fertige Connectors. Wir beraten herstellerunabhängig.
Was ist ein Data Contract?
Eine schriftliche Vereinbarung zwischen der Stelle, die Daten liefert, und denen, die sie nutzen. Sie legt zum Beispiel Struktur, Bedeutung, Qualitätsregeln, Aktualität und Zuständigkeit fest. Wird sie automatisch geprüft, fallen Abweichungen auf, bevor sie Berichte erreichen.
Was passiert, wenn eine Pipeline ausfällt?
Läufe lassen sich gefahrlos wiederholen, und Alarme gehen an eine feste Zuständigkeit. Nach der Behebung werden die betroffenen Zeiträume nachgeladen, ohne dass Daten doppelt gezählt werden.
Lassen sich unsere bestehenden Systeme anbinden?
Ja. Wir binden vorhandene Datenbanken, Anwendungen, Schnittstellen und Dateien an, statt alles zu ersetzen. Für Systeme ohne fertigen Connector bauen wir bei Bedarf eine eigene Anbindung.