1. Einleitung

Eine Data-Pipeline ist ein orchestrierter Workflow, der Daten aus unterschiedlichen Quellen extrahiert, sie nach Bedarf transformiert und schlussendlich in Zielsysteme lädt. Er kommt typischerweise in ETL- (Extract, Transform, Load) oder ELT-Szenarien (Extract, Load, Transform) zum Einsatz, um Daten für Analysen, Reporting oder Machine-Learning-Prozesse bereitzustellen Microsoft Learning.
In Microsoft Fabric bildet die Data-Pipeline das Rückgrat für die Automatisierung von Datenbewegungen und -aufbereitungen in großem Maßstab – von On-Premises-Datenbanken bis hin zu Cloud-Diensten wie Azure Data Lake oder Synapse Analytics Microsoft Learn.

1.1. Data-Pipelines in MS Fabric

1.1.1 Unterschiede zwischen Azure Data Factory (ADF) und Data Pipelines

Data Factory in Microsoft Fabric ist die Next-Generation von Azure Data Factory: Sie bietet dieselben Cloud-scale ETL/ELT-Funktionen wie ADF, ist aber nahtlos in das einheitliche Fabric-Ökosystem (Lakehouse, Data Warehouse, Power BI) integriert und kommt dabei mit einer moderneren UX sowie neuen Aktivitäten (z. B. Office 365 Outlook) ohne das Publish-Schema von ADF aus [L]. Azure Data Factory hingegen ist ein eigenständiger, etablierter Dienst für hybride und cloud-basierte Datenintegration mit klar getrennten Konzepten für Datasets, Linked Services, Integration Runtimes und Publish/CI-CD [L]

1.1.1.1. Generelle Ausrichtung
  • Azure Data Factory (ADF) ist ein klassischer, voll verwalteter ETL-/ELT-Dienst, der als Stand-alone-Service in Azure bereitsteht und umfangreiche Konnektivität, CI/CD-Workflows und Integration Runtime-Konzepte bietet.
  • Data Factory in Fabric (oft einfach „Data Pipeline“ genannt) ist der Nachfolger von ADF, tief im Microsoft Fabric verankert und fokussiert auf nahtlose Integration mit Lakehouse, Data Warehouse, Power BI und Copilot.

1.1.1.2. Pipeline- und Dataflow-Begriff
  • ADF verwendet den Begriff Pipeline, um eine Abfolge von Aktivitäten zu gruppieren, und unterscheidet zwischen Mapping Data Flows (grafische ETL-Graphen) und klassischen Aktivitäten.
  • Fabric nennt beides ebenfalls Data pipeline, setzt aber für Transformationen auf Dataflow Gen2 (ersetzt Mapping Data Flows mit verbesserter UX und Spark-Unterbau).

1.1.1.3. Datasets vs. Connections
  • ADF arbeitet mit Datasets als Metadaten-Objekte, die Quell- und Zielstrukturen beschreiben (z. B. ein Blob-Container oder eine SQL-Tabelle).
  • Fabric verzichtet komplett auf Datasets. Stattdessen verwendet es Connections, die zugleich Verbindung und Datendefinition in einem sind – intuitiver und schneller einzurichten.

1.1.1.4. Linked Services vs. Connections
  • In ADF definiert ein Linked Service eine externe Ressource (Storage, Datenbank, Compute) und nutzt unterliegende Integration Runtimes.
  • In Fabric werden Linked Services durch Connections abgelöst, die ähnlich wie Connection Strings funktionieren, aber mit einer moderneren UI direkt im Workspace gepflegt werden.

1.1.1.5. Integration Runtime (IR)
  • Azure Data Factory setzt auf Integration Runtimes (Azure-, Self-Hosted, Azure-SSIS IR), um Datenzugriff und Transformation verteilt zu orchestrieren.
  • Fabric kennt kein IR-Konzept mehr: Datenbewegung und Compute laufen im Fabric-Control-Plane ohne separaten Runtime-Layer.

1.1.1.6. Trigger und Auslösung
  • ADF unterstützt Schedule, Tumbling Window und Event Triggers (Blob-Events etc.) zum Pipeline-Start.
  • Fabric bietet ebenfalls Zeit-Scheduler und native Reflex-Events (File Event Triggers) direkt in Pipelines an, ohne extra Trigger-Ressourcen anzulegen.

1.1.1.7. Deployment & Publish
  • In ADF werden Änderungen in der Pipeline erst nach einem Publish (CI/CD-Integration via Git, Azure DevOps) aktiv.
  • Fabric nutzt stattdessen einen simplen Save-Button (speichert automatisch beim Ausführen), CI/CD-Support für Data Factory ist „coming soon“.

1.1.1.8. Monitoring & Observability
  • ADF integriert sich in Azure Monitor, bietet Pipeline-Runs und Aktivitäts-Log via Portal, REST-API, PowerShell, etc..
  • Fabric hat einen modernen Monitoring Hub, der über Workspaces hinweg Einblicke gewährt und detaillierte Dauer-Breakdowns direkt in der Data-Pipeline-UI zeigt.

1.1.1.9. Zusätzliche Features in Fabric
  • Lakehouse & Data Warehouse Integration: Quelle und Ziel sind nativ auswählbar, ohne separate Connector-Konfiguration.
  • Office 365 Outlook Activity: E-Mail-Benachrichtigungen per Konfiguration (neu in Fabric).
  • Get Data Experience: Schnelles Aufsetzen von Copy-Pipelines via Guided UX.
  • Save As: Pipeline-Duplizierung per Klick ohne Export/Import.

1.1.1.10. Fazit

Während Azure Data Factory als eigenständiger, bewährter Datenintegrationsdienst umfangreiche Konzepte (Datasets, IR, Publish) und Integrationspunkte bietet, fokussiert sich Data Factory in Microsoft Fabric auf eine nahtlose, einheitliche Plattformerfahrung mit moderner UX, direkter Integration in die Fabric-Dienste und neuen Aktivitäten – aber noch ohne alle ADF-Features (z. B. Azure-SSIS IR) vollständig zu replizieren. Die Wahl hängt daher von Ihrem Ökosystem-Fokus und Reifegrad Ihrer bestehenden ADF-Workloads ab.

Weblinks

2. Data-Pipeline-Aktivitäten

2.0 Übersicht & Einleitung

2.0.1 Beschreibung

A Beginner’s Guide to Microsoft Fabric Data Pipelines

2.1 Verschieben und Transformieren

2.1.1 Daten kopieren (Copy Activity)

2.1.1.1 Beschreibung

Die Copy Activity (Daten kopieren) ist eine Pipeline-Aktivität, mit der Sie Daten zwischen verschiedensten Quellsystemen (z. B. Blob Storage, SQL-Server, Data Lake) und Zielen verschieben können. Dabei lassen sich Schema-Mappings, inkrementelle Ladevorgänge und grundlegende Datentransformationen direkt im Copy-Schritt konfigurieren.

2.1.1.2 Videos
2.1.1.3 Webseiten

2.1.2 Datenfluss (Mapping Data Flows)

2.1.2.1 Beschreibung

Die Mapping Data Flows bieten eine vollständig visuelle ETL/ELT-Erfahrung ohne Code. Unter der Haube übersetzt Fabric Ihre Flows in Spark-Jobs und skaliert sie auf verwalteten Clustern aus, um große Datenmengen performant zu transformieren.

2.1.2.2 Videos
2.1.2.3 Webseiten

2.1.3 Notebook

2.1.3.1 Beschreibung

???

2.1.2.2 Videos
2.1.2.3 Webseiten

2.2 Metadaten und Überprüfung

2.2.1 Metadaten abrufen (Get Metadata Activity)

2.2.1.1 Beschreibung

Die Get Metadata Activity liest Eigenschaften einer Datenquelle aus (z. B. Dateigröße, Erstellungsdatum, Schema-Informationen). Die ausgegebenen Metadaten lassen sich in bedingten Ausdrücken nutzen, um Validierungen oder verzweigte Abläufe zu steuern Microsoft Learn.

2.2.1.2 Videos
2.2.1.3 Webseiten

2.2.2 Nachschlagen (Lookup Activity)

2.2.2.1 Beschreibung

Die Lookup Activity führt eine Abfrage gegen eine externe Datenquelle aus (Datei, Datenbank, Query) und gibt den ersten Datensatz oder eine Liste zurück. Ideal, um Referenzdaten in Transformationslogiken nachzuschlagen.

2.2.2.2 Videos
2.2.2.3 Webseiten

2.3 Ablaufsteuerung

2.3.1 Variable festlegen & anfügen

2.3.2.1 Beschreibung

Die Set Variable– und Append Variable-Aktivitäten definieren bzw. erweitern Variablen im Pipeline-Kontext, um Parameter, Zähler oder Zwischenergebnisse zwischen Aktivitäten zu speichern.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.3.2 Wenn-Bedingung (If Condition)

Mit der If Condition Activity verzweigen Sie den Ablauf basierend auf booleschen Ausdrücken – ähnlich wie eine if-Anweisung in Programmiersprachen.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.3.3 Foreach

ForEach führt einen Satz von Aktivitäten für jedes Element einer Sammlung (Array) aus und ermöglicht so Batch- oder Parallelverarbeitung.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.3.4 Filter

Die Filter Activity selektiert aus einem Array nur jene Elemente, die ein vordefiniertes Kriterium erfüllen – praktisch vor ForEach-Schleifen oder bedingten Ausführungen.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.3.5 Warten (Wait)

Mit Wait pausiert die Pipeline für eine konfigurierbare Zeitspanne, um etwa auf externe Vorgänge oder zeitliche Abhängigkeiten zu warten.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.3.6 Fehler (Fail)

Die Fail Activity löst absichtlich eine Fehlersituation aus und stoppt oder verzweigt die Pipeline, wenn z. B. eine Validierung misslingt.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.4 Orchestrieren

2.4.1 Pipeline aufrufen (Execute Pipeline)

  • Legacy und Vorschau: Ermöglichen das Aufrufen anderer Pipelines innerhalb einer Pipeline. So lassen sich komplexe Workflows modular zusammensetzen.
2.3.2.1 Videos
2.3.2.3 Webseiten

2.4.2 Web & Webhook

  • Web Activity verschickt HTTP(S)-Anfragen an REST-Endpunkte und verarbeitet die Rückgabe.
  • Webhook Activity startet oder pausiert Pipelines ereignisgesteuert über Callback-URLs.
2.3.2.1 Videos
2.3.2.3 Webseiten

2.4.3 Semantic Model aktualisieren

Aktualisiert nach Datenladevorgängen automatisch Power BI-Datasets oder semantische Modelle in Fabric über REST-APIs oder dedizierte Konnektoren.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.4.4 Azure Databricks

Führt Databricks-Notebooks oder JAR-Jobs auf Databricks-Clustern aus und unterstützt Parameterübergabe aus Pipelines Microsoft Learn.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.4.5 Funktionen (Azure Functions)

Integriert serverlose Azure Functions für leichte Transformations- oder Integrationsaufgaben ohne eigene Infrastruktur.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.4.6 Azure HDInsight

Steuert Hadoop-, Spark- oder Hive-Jobs auf HDInsight-Clustern als Teil Ihrer Pipelines.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.4.7 Azure Batch

Orchestriert rechenintensive Batch-Workloads auf elastischen Compute-Clustern.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.5 Benachrichtigungen

2.5.1 Office 365 Outlook (Vorschau)

Sendet E-Mails mit Anhängen und HTML-Inhalt über ein Office 365-Postfach zur Laufzeit.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.5.2 Teams (Vorschau)

Postet Nachrichten in Teams-Kanälen oder Chats für Echtzeit-Alerts.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.6 Transformieren

2.6.1 Spark-Auftragsdefinition

Definiert Spark-Jobs (JAR, Python, .NET) auf Spark-Clustern für Big-Data-Processing.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.6.2 Notebook

Führt Synapse-/Databricks-Notebooks (Python, Scala) aus – ideal für explorative Analysen und Data Science.

2.1.2.2 Videos
2.1.2.3 Webseiten

2.6.3 Skript

Ermöglicht generische Skript-Ausführungen (z. B. Python, PowerShell, SQL) in einer Compute-Umgebung.

2.3.2.1 Videos
2.3.2.3 Webseiten

2.6.4 Gespeicherte Prozedur (Stored Procedure)

2.6.4.1. Beschreibung

.. Startet SQL-Stored Procedures in Azure SQL oder Synapse Analytics für datenbanknahe Business-Logik.

Die Stored Procedure Activity in Microsoft Fabric Data Pipelines ermöglicht das Ausführen von SQL-Stored Procedures in relationalen Zieldatenbanken und bietet umfassende Konfigurationsmöglichkeiten für Input-Parameter, unterstützt jedoch keine OUTPUT-Parameter oder direkte ResultSet-Rückgaben. Eingabeparameter lassen sich statisch setzen oder über dynamische Ausdrücke und Systemvariablen befüllen, wobei die Konfiguration sowohl im grafischen Designer als auch im JSON-Editor erfolgt. Typische Szenarien umfassen das Aufrufen von Prozeduren für Datenbereinigungen, Statusprüfungen oder Business-Logik direkt im Data Warehouse. Für OUTPUT-Parameter oder komplexe ResultSets bestehen Workarounds über Lookup- oder Script-Activities sowie SELECT-Statements am Ende der Prozedur, um Rückgabewerte in Pipeline-Variablen zu speichern,

2.6.4.2 Videos
2.6.4.3 Webseiten

2.6.5 KQL

Führt Kusto-Abfragen in Log Analytics oder Data Explorer aus und verarbeitet Telemetrie- und Log-Daten.


2.7 Machine Learning

2.7.1 Azure Machine Learning

Automatisiert Training, Registrierung und Deployment von ML-Modellen in Azure ML, von Datenvorbereitung bis Inference.

2.3.2.1 Videos
2.3.2.3 Webseiten

3. Abhängigkeiten in Fabric Data Pipelines

In Data Pipelines von Microsoft Fabric sorgen Verknüpfungen (activity dependencies) dafür, dass Aktivitäten in der richtigen Reihenfolge und unter definierten Bedingungen ausgeführt werden. Sie basieren rein auf dem Ausführungsstatus vorhergehender Aktivitäten und kennen nur vier Zustände: Succeeded, Failed, Skipped und Completed. Im Gegensatz dazu erlauben Precedence Constraints in SSIS neben Statusbedingungen auch komplexe Ausdrücke (Expressions) und logische Verknüpfungen (AND/OR). Fabric-Verknüpfungen sind einfacher und schlanker, bieten jedoch weniger Flexibilität: Ausdrücke direkt an den Abhängigkeiten sind nicht möglich, und erweiterte Logik muss über separate Kontrollaktivitäten abgebildet werden.


3.1. Was sind Verknüpfungen?

Verknüpfungen (engl. Activity Dependency) definieren, wie nachfolgende Aktivitäten von vorhergehenden abhängen und unter welchen Bedingungen sie ausgeführt werden dürfen. Technisch werden sie über das JSON-Feld dependsOn konfiguriert, in dem jede Abhängigkeit mit einer Liste von dependencyConditions versehen wird.


3.2. Wozu dienen Verknüpfungen?

Verknüpfungen steuern den Ablauf innerhalb einer Pipeline und garantieren, dass die Datenorchestrierung in der gewünschten Reihenfolge stattfindet. Typische Einsatzszenarien sind:

  • Serielle Abarbeitung: Aktivitäten, die erst bei Erfolg oder Abschluss einer Vorgängeraktivität starten dürfen.
  • Fehlerbehandlung: Separate Fehlerpfade bei fehlgeschlagenen Aktivitäten realisieren.
  • Bedingtes Springen: Bei Skipped-Status (z. B. durch vorhergehende Bedingungen) alternative Logiken auslösen.

3.3. Welche Arten von Verknüpfungen?

Microsoft Fabric kennt exakt vier dependencyConditions, analog zu SSIS-Status:

  1. Succeeded: Nachfolger läuft nur bei Erfolg des Vorgängers.
  2. Failed: Nachfolger läuft nur bei Fehler des Vorgängers.
  3. Completed: Nachfolger läuft unabhängig vom Ergebnis (Erfolg oder Fehler).
  4. Skipped: Nachfolger läuft, wenn der Vorgänger übersprungen wurde (z. B. durch vorherige Regeln).

3.4. Vergleich der Verknüpfungen im MS Fabric mit Precedence Constraints

MerkmalMS Fabric dependsOnSSIS Precedence Constraints
StatusbedingungenSucceeded, Failed, Skipped, CompletedSuccess, Failure, Completion
Expressions in AbhängigkeitNicht unterstütztAusdrucksbasiert möglich (Expressions)
Logische VerknüpfungImplizites AND (alle Abhängigkeiten müssen erfüllt sein)AND/OR-Kombination mehrerer Constraints möglich
KonfigurationJSON-Feld dependsOn oder GUIGUI-Editor oder XML im SSIS-Paket
VerschachtelungÜber Control-Flow-Aktivitäten (z. B. ForEach, Until)Container-Hierarchie (Sequence, ForEach, etc.)

3.5. Limitationen von Verknüpfungen

  1. Keine Ausdrücke in dependsOn: Bedingungen können nicht auf Variablen oder komplexen Ausdrücken basieren, nur auf dem Aktivitätsstatus.
  2. Starre AND-Logik: Mehrere Abhängigkeiten werden stets mit AND verknüpft; OR-Logik ist nicht möglich ohne zusätzliche Activities.
  3. Begrenzte Visualisierung: Es fehlt eine zentrale Ansicht, um alle Pipeline-Abhängigkeiten auf einmal zu erkennen; man muss in den JSON-Code oder die UI-Ausprägung jeder Pipeline schauen.
  4. Trigger-spezifische Limits: Manche Trigger, etwa Tumbling Window Triggers, erlauben maximal fünf Abhängigkeiten.

3.6. Vorschläge zum Umgehen der Limitationen

  • If Condition Activity: Komplexe Ausdrücke und variablenbasierte Bedingungen über eine IfCondition-Aktivität umsetzen.
  • Switch Activity: Für Mehrfachverzweigungen die Switch-Aktivität nutzen, um Fälle basierend auf Ausdrücken zu unterscheiden.
  • Until- oder ForEach-Schleifen: Logik mit Schleifen und Pausen in Until oder ForEach kapseln, um dynamische Ablaufsteuerungen zu realisieren.
  • Modulare Pipelines: Große Workflows in mehrere Pipelines aufteilen und per ExecutePipeline verketten, um besser wiederverwendbare Einheiten zu schaffen.
  • SDK/ARM-Templates: Abhängigkeiten automatisiert per Azure SDK oder ARM-Template auslesen und dokumentieren, um die Transparenz zu erhöhen.

Mit diesen Ansätzen lassen sich die einfachen, aber wirkungsvollen Verknüpfungen in Microsoft Fabric Data Pipelines optimal einsetzen und gleichzeitig deren Beschränkungen elegant umgehen.

weiterführende Links

4. Interaktion mit Data Pipelines

4.1. Übergabe von extern an eine Data Pipeline

4.2. Übergabe von Parametern an Notebooks

4.3. Rückgabewerte von Aktivitäten in Variablen speichern

Lmitationen:

  • Stored Procedures können keine Rückgabparameter liefern – sieh dazu oben unter Stored Procedure Activity.

9. weiterführende Links & Video-Serien

9.1. Microsoft Fabric

Learn Microsoft Fabric Data Pipelines in 2025 – Full Course!

9.2. Azure Data Factory