Data Pipeline
Eine Data Pipeline ist die Kette von Schritten, die Daten von der Quelle zum Ziel transportiert — mit Transformation, Validierung und Anreicherung unterwegs. In ML-Systemen sind Pipelines das Rückgrat der Datenversorgung.
Der klassische Ablauf: Extract (Daten aus Quellen ziehen — APIs, Datenbanken, Dateien), Transform (bereinigen, filtern, aggregieren, Features berechnen), Load (in das Zielsystem schreiben — Data Warehouse, Feature Store, Modell-Trainingsinfrastruktur). Dieses ETL-Muster (oder ELT — erst laden, dann transformieren) ist das Grundmuster.
ML-Pipelines erweitern den ETL-Prozess um spezifische Schritte: Feature Engineering (Berechnung aussagekräftiger Merkmale), Train/Test Split (zeitlich korrekte Aufteilung der Daten), Model Training, Evaluation, Model Serving und Monitoring. Tools wie Kubeflow Pipelines, Apache Airflow, Prefect und Dagster orchestrieren diese Schritte.
Die Herausforderung: ML-Pipelines sind komplex und fragil. Google schätzte in ihrem einflussreichen Paper „Hidden Technical Debt in Machine Learning Systems" (2015), dass der ML-Code nur einen kleinen Bruchteil eines produktiven ML-Systems ausmacht — der Großteil ist Datenmanagement, Feature-Pipelines, Monitoring und Serving-Infrastruktur.
Feature Stores (Feast, Tecton, Hopsworks) adressieren ein spezifisches Pipeline-Problem: Die Features, die beim Training berechnet wurden, müssen bei der Inferenz identisch berechnet werden (Training-Serving Skew). Der Feature Store zentralisiert Feature-Definitionen und stellt Konsistenz sicher.