Die Datenpipeline-Architektur ist das End-to-End-Design dafür, wie Daten erfasst, verarbeitet, gespeichert und von Quellsystemen an die Personen, Anwendungen und Modelle geliefert werden, die sie nutzen. Das Wort „Architektur“ bezieht sich auf den Entwurf (Blueprint), nicht auf die Pipeline selbst. Sie umfasst die Entscheidungen darüber, wie Daten fließen, wo sie transformiert werden und welche Tools die einzelnen Schritte auf dem Weg übernehmen.
Eine gute Architektur ist auf den jeweiligen Anwendungsfall abgestimmt und wird nicht einfach von der Stange genommen. Eine für die Betrugserkennung in Echtzeit entwickelte Datenpipeline sieht ganz anders aus als eine Pipeline, die einen nächtlichen Umsatzbericht erstellt, obwohl beide Daten von der Quelle zum Ziel bewegen. Diese Glossarseite beschreibt die Kernschichten, die jede Pipeline gemeinsam hat, die gängigen Phasenmodelle, die wichtigsten Architekturmuster und die Best Practices, die dafür sorgen, dass Pipelines auch bei Skalierung zuverlässig bleiben.
Eine Datenpipeline bewegt Daten durch eine Reihe von Phasen, und jede Phase hat eine bestimmte Aufgabe: Daten erfassen, bereinigen, speichern und nutzbar machen. Die Architektur ist der Plan, wie diese Phasen miteinander verbunden sind. Sie definiert, was mit den Daten bei jedem Schritt, in welcher Reihenfolge und unter welchen Regeln geschieht.
Architekturentscheidungen werden auf zwei Ebenen getroffen. Das logische Design definiert, welche Phasen existieren und was jede einzelne tut: Das ist das „Was“. Das physische Design definiert, welche spezifischen Tools und Infrastrukturen die einzelnen Phasen ausführen: Das ist das „Wie“. Die Orchestrierung (die automatische Planung und Koordinierung jedes Schritts) und das Monitoring gehören zu keiner einzelnen Phase. Sie laufen über die gesamte Pipeline hinweg. Moderne Plattformen haben zudem eine alte Trennung aufgehoben. Mit Lakeflow vereint Databricks Batch- und Streaming-Pipelines auf einer einzigen Basis, sodass Teams nicht zwei parallele Systeme aufbauen und warten müssen.
Unabhängig von dem Muster, für das sich ein Team entscheidet, basiert jede Datenpipeline auf denselben vier Schichten. Jede Schicht beantwortet eine andere Frage zu den Daten: Wie sie hineingelangen, wie sie nützlich werden, wo sie liegen und wer sie nutzt.
Die Ingestion zieht Daten aus Quellsystemen in die Pipeline: Datenbanken, Anwendungen, APIs, Dateien im Cloud-Speicher, Event-Streams und Sensoren. Die Daten-Ingestion gibt es in zwei Varianten. Die Batch-Ingestion ruft Daten nach einem Zeitplan ab, beispielsweise jede Stunde oder jede Nacht. Die Streaming-Ingestion erfasst Daten kontinuierlich, sobald Ereignisse eintreffen. Viele Pipelines nutzen auch Change Data Capture (CDC), eine Methode, die Änderungen auf Zeilenebene in einer Quelldatenbank verfolgt, sodass die Pipeline nur neue oder aktualisierte Daten überträgt, anstatt alles neu zu laden.
In dieser Schicht werden Rohdaten bereinigt, umstrukturiert, angereichert und für die Nutzung vorbereitet. Zu den typischen Aufgaben gehören das Beheben fehlender Werte, das Standardisieren von Formaten, das Zusammenführen von Datensätzen und das Anwenden von Geschäftslogik – dieselben Aufgaben, die das Herzstück von ETL bilden. Die Verarbeitung folgt derselben Aufteilung wie die Ingestion. Die Batch-Verarbeitung verarbeitet große Datenmengen gemeinsam, während die Stream-Verarbeitung Datensätze einzeln oder in winzigen Micro-Batches verarbeitet, sobald sie eintreffen.
Im Storage (Speicher) landen die verarbeiteten Daten, damit sie abgefragt, analysiert oder in Modelle eingespeist werden können. Das Ziel ist in der Regel ein Data Lake, ein Data Warehouse oder ein Lakehouse – ein einziges System, das die Stärken von beiden vereint. Das Format ist ebenso wichtig wie der Speicherort. Offene Formate wie Lakehouse Storage und Apache Iceberg ermöglichen es mehreren Tools, dieselben Daten zu lesen, ohne sie von System zu System kopieren zu müssen. Delta Lake bietet zudem Zuverlässigkeitsfunktionen wie ACID-Transaktionen (eine Garantie, dass Schreibvorgänge entweder vollständig erfolgreich sind oder vollständig fehlschlagen, was Datenkorruption verhindert) und Time Travel (die Möglichkeit, ältere Versionen einer Tabelle abzufragen).
Die letzte Schicht liefert die vorbereiteten Daten an die Personen und Systeme, die sie benötigen: Analysten, die SQL-Abfragen ausführen, geschäftliche Anwender, die mit Dashboards arbeiten, Data Scientists, die Modelle trainieren, und Anwendungen, die APIs aufrufen. Die Ziele reichen von BI-Tools über ML-Plattformen bis hin zu operativen Systemen, wobei ein Data Warehouse oft im Mittelpunkt von Analytics-Workloads steht. Über alle vier Schichten hinweg übernehmen Orchestrierung und Observability die verbindende Arbeit: Sie planen Jobs, verfolgen die Datenqualität und schlagen Alarm, wenn etwas fehlschlägt.
Verschiedene Quellen beschreiben Datenpipelines mit drei, vier oder fünf Phasen, was oft zu Verwirrung führt. Die Realität ist einfacher. Alle drei Modelle beschreiben dieselbe zugrunde liegende Arbeit auf unterschiedlichen Detailebenen.
| Modell | Phasen | Typische Verwendung |
|---|---|---|
| 3-Phasen | Quellen → Verarbeitung → Ziel | High-Level-Erklärungen, Management-Übersichten, Einführungsinhalte |
| 4-Phasen | Ingestion → Verarbeitung → Speicherung → Bereitstellung | Am häufigsten im modernen Data Engineering. Bietet ein ausgewogenes Verhältnis zwischen Klarheit und Detailtiefe |
| 5-Phasen | Erfassung → Ingestion → Verarbeitung → Speicherung → Analyse | Detaillierte technische Aufschlüsselungen. Unterteilt die „Datenbeschaffung“ in Erfassung (aus der Quelle) und Ingestion (in die Pipeline) |
Die Anzahl der Phasen ist lediglich eine Frage der Benennung. Die Arbeit, die die Pipeline verrichtet, bleibt dieselbe.
Architekturmuster sind die etablierten Designs, aus denen Teams beim Erstellen von Pipelines wählen können. Das richtige Muster hängt von den Latenzanforderungen, dem Datenvolumen und der nachgelagerten Nutzung der Daten ab.
Die Batch-Architektur verarbeitet Daten in geplanten Blöcken: jede Stunde, jede Nacht oder jede Woche. Sie eignet sich für das Reporting, historische Analysen, ML-Trainingsdaten und alle Anwendungsfälle, bei denen Verzögerungen von Minuten oder Stunden akzeptabel sind. Batch-Pipelines sind einfacher zu erstellen, kostengünstiger im Betrieb und leichter zu debuggen als ihre Streaming-Pendants. Der Kompromiss liegt in der Aktualität. Wenn Entscheidungen von Ereignissen abhängen, die vor wenigen Sekunden stattgefunden haben, kann Batch nicht mithalten.
Die Streaming-Architektur verarbeitet Daten kontinuierlich, Datensatz für Datensatz, sobald sie generiert werden. Sie eignet sich für Anwendungsfälle, bei denen es auf Reaktionen im Sekundenbereich ankommt: Betrugserkennung, Echtzeit-Personalisierung und IoT-Überwachung. Der Kompromiss sind die Kosten. Streaming-Pipelines sind im Betrieb in der Regel teurer als Batch-Pipelines, da sie eine Always-on-Infrastruktur erfordern.
Die Lambda-Architektur nutzt zwei parallele Pfade. Ein Batch-Pfad liefert präzise historische Daten, ein Streaming-Pfad liefert schnelle, aktuelle Daten, und ein Serving-Layer führt die Ergebnisse zusammen. Das Design funktioniert, bringt jedoch einen bekannten Nachteil mit sich: Die Wartung von zwei Pipelines bedeutet doppelten Code, doppelte Logik und den doppelten Betriebsaufwand.
Die Kappa-Architektur vereinfacht Lambda, indem sie eine einzige Streaming-Pipeline für alles nutzt. Wenn eine historische Analyse erforderlich ist, wird der Stream von Anfang an erneut abgespielt. Kappa eignet sich für Teams, die Aktualität auf Streaming-Niveau wünschen, ohne die Kosten für die Wartung zweier paralleler Systeme tragen zu müssen.
Medallion-Architektur ist ein beliebtes Muster auf Lakehouse-Plattformen, das Daten in drei Qualitätsstufen organisiert: Bronze (roh, wie eingelesen), Silber (bereinigt und angepasst) und Gold (aufbereitet, bereit für geschäftliche Analysen). Wie es in der Databricks-Dokumentation heißt: „Die Medallion-Architektur verwendet drei Schichten: Bronze, Silber und Gold, die jeweils einen bestimmten Zweck in der Pipeline erfüllen.“ Jede Stufe kann als eigene Pipeline ausgeführt werden, was die Planung, Überwachung und Fehlerbehebung erleichtert, da Probleme auf eine einzelne Schicht beschränkt bleiben.
ETL und ELT unterscheiden sich darin, wann Daten transformiert werden. ETL (Extract, Transform, Load) transformiert Daten, bevor sie in den Speicher geladen werden. ELT (Extract, Load, Transform) lädt zuerst Rohdaten und transformiert sie im Zielsystem. Moderne Cloud-Plattformen wie Databricks, Snowflake und BigQuery haben ELT zum dominierenden Muster gemacht, da Cloud-Speicher und -Compute mittlerweile kostengünstig und elastisch genug sind, um Daten direkt vor Ort zu transformieren. Einen detaillierteren Vergleich finden Sie unter ETL vs. ELT.
| ETL | ELT | |
|---|---|---|
| Reihenfolge | Extract → Transform → Load | Extract → Load → Transform |
| Ort der Transformation | In einem separaten Verarbeitungstool, vor der Speicherung | Im Zielsystem (Lakehouse oder Warehouse) |
| Typischer Anwendungsfall | Altsysteme (On-Premises-Warehouses), strenge Validierung vor dem Laden | Moderne Cloud-Lakehouses und -Warehouses |
| Stärken | Sauberere Daten landen im Speicher. Vorhersagbare Schemata | Flexibel, skalierbar, hält Rohdaten für die erneute Verarbeitung bereit |
| Kompromisse | Weniger flexibel. Spätere Wiederverwendung von Rohdaten ist schwieriger | Erfordert leistungsstarke Compute-Ressourcen im Zielsystem |