Fabric und Azure
Apache Airflow erklärt: DAGs, Beispiel und Vergleich
Was Apache Airflow ist, wie DAGs funktionieren, ein minimaler DAG in Python und der Vergleich mit Fivetran, AWS Step Functions und Fabric Pipelines.
Austin Levine
·
Aktualisiert
Apache Airflow ist ein Open-Source-Tool, um Datenworkflows zu planen und zu orchestrieren. Sie definieren jeden Workflow in Python als DAG, eine Menge von Tasks mit Abhängigkeiten untereinander. Airflow führt die Tasks in der richtigen Reihenfolge nach Zeitplan aus, mit Wiederholungsversuchen und einer Weboberfläche, die zeigt, was lief und was fehlschlug. Airflow selbst ist unter der Apache-2.0-Lizenz kostenlos. Sie zahlen für die Server, auf denen es läuft, oder für einen Managed Service, der es für Sie betreibt.
Was Airflow leistet und was nicht
Airflow ist ein Orchestrator. Es entscheidet, wann jeder Schritt in welcher Reihenfolge läuft, und hält das Ergebnis fest. Die eigentliche Arbeit passiert woanders: eine SQL-Abfrage in Ihrem Warehouse, ein Spark-Job, ein API-Aufruf, ein dbt-Lauf.
Diese Unterscheidung erklärt die meisten Tool-Vergleiche. Airflow kopiert Daten nicht von selbst von Salesforce in Ihr Warehouse. Sie schreiben diesen Code selbst, rufen ein Tool auf, das es tut, oder nutzen eines der Provider-Pakete von Airflow, die die API eines Systems kapseln.
Wie ein DAG funktioniert
DAG steht für Directed Acyclic Graph, auf Deutsch gerichteter azyklischer Graph:
Gerichtet: Jede Abhängigkeit hat eine Richtung. Task B läuft nach Task A.
Azyklisch: Es gibt keine Schleifen. Ein Task kann nie, direkt oder indirekt, von sich selbst abhängen.
Jeder Workflow ist ein DAG. Jedes Kästchen darin ist ein Task, meist mit einem Operator erzeugt, etwa BashOperator, PythonOperator oder dem Operator eines Providers für Snowflake, Databricks oder Azure.
Ein minimaler DAG, der Daten extrahiert, transformiert und einen Bericht aktualisiert, einmal am Tag:
from datetime import datetime
from airflow import DAG
from airflow.operators.bash import BashOperator
with DAG(
dag_id="daily_sales_pipeline",
start_date=datetime(2026, 1, 1),
schedule="@daily",
catchup=False,
) as dag:
extract = BashOperator(task_id="extract", bash_command="python extract_sales.py")
transform = BashOperator(task_id="transform", bash_command="dbt run --select sales")
refresh = BashOperator(task_id="refresh_report", bash_command="python refresh_power_bi.py")
extract >> transform >> refreshDie letzte Zeile legt die Reihenfolge fest. transform wartet auf extract, und refresh_report wartet auf transform. Schlägt transform fehl, wiederholt Airflow den Task nach Ihren Einstellungen und führt die Aktualisierung nicht aus.
Importpfade und Parameternamen unterscheiden sich zwischen Airflow-Versionen. Prüfen Sie die Dokumentation der Version, die Sie betreiben.
Wofür Airflow genutzt wird
Einsatz | Beispiel |
|---|---|
ETL- und ELT-Pipelines | Aus einer Anwendungsdatenbank extrahieren, dbt-Modelle ausführen, ein Power BI Semantic Model aktualisieren |
Machine Learning | Ein Modell nachts neu trainieren, bewerten und nur veröffentlichen, wenn es das aktuelle schlägt |
Datenqualität | Nach jedem Ladevorgang Tests ausführen und die Pipeline stoppen, wenn einer fehlschlägt |
Operative Jobs | Dateien nach Zeitplan auf den SFTP-Server eines Partners exportieren |
Airflow oder Fivetran?
Die Tools erledigen unterschiedliche Aufgaben, die Frage lautet also meist, welches Sie wofür einsetzen.
Fivetran ist ein Managed Service für Datenbewegung. Sie wählen eine Quelle wie Salesforce oder eine Postgres-Datenbank, und Fivetran hält eine Kopie davon in Ihrem Warehouse und kümmert sich um Schemaänderungen und API-Limits. Sie schreiben keinen Code. Fivetran hat einen kostenlosen Tarif mit 500.000 monatlich aktiven Zeilen für Verbindungen und 5.000 Modellläufen pro Monat, darüber gibt es kostenpflichtige Tarife.
Airflow führt Tasks aus und ordnet sie. Es kann Fivetran, dbt, Spark oder Ihre eigenen Skripte aufrufen und entscheiden, was nach was läuft.
Ein gängiges Setup nutzt beide: Fivetran lädt die Rohdaten, dbt transformiert sie, und Airflow stößt jeden Schritt in Reihenfolge an und alarmiert Sie, wenn einer fehlschlägt. Die Transformationsebene behandelt unser Leitfaden zu dbt Cloud.
Wählen Sie Airflow allein, wenn Ihre Quellen keinen fertigen Connector haben oder wenn Sie volle Kontrolle über den Extraktionscode brauchen. Wählen Sie Fivetran, wenn Standard-Connectors existieren und Sie keinen Extraktionscode pflegen wollen.
Airflow oder AWS Step Functions?
AWS Step Functions ist ein Serverless-Dienst von AWS, um Workflows zu orchestrieren. Sie definieren einen Workflow in Amazon States Language, einem JSON-Format, oder in einem visuellen Designer, und er ruft AWS-Dienste wie Lambda, ECS und Batch auf.
Apache Airflow | AWS Step Functions | |
|---|---|---|
Workflow-Definition | Python-Code | JSON (Amazon States Language) oder visueller Designer |
Wo es läuft | Überall: auf Ihren Servern, Kubernetes oder einem Managed Service | Nur AWS |
Infrastruktur | Sie betreiben es selbst oder zahlen für einen Managed Service | Serverless, nichts zu betreiben |
Passt am besten zu | Datenpipelines über viele Systeme und Clouds | Workflows, die überwiegend aus AWS-Diensten bestehen |
Wo Airflow laufen kann
Selbst gehostet: auf eigenen Servern oder Kubernetes. Die Software ist kostenlos, aber Sie pflegen Scheduler, Worker und Metadatenbank.
Managed Services: Amazon Managed Workflows for Apache Airflow (MWAA), Google Cloud Composer und Astronomer betreiben Airflow für Sie.
Microsoft Fabric: Data Factory in Fabric enthält Apache Airflow Jobs, ein verwaltetes Airflow, das Ihre Python-DAGs neben Ihren Pipelines und Lakehouses ausführt. Prüfen Sie vorher die Airflow-Version und die Regionenliste: Microsoft dokumentiert pro Job eine unterstützte Version, eine Teilmenge der Regionen und keine Unterstützung für private Netzwerke.
Airflow oder Fabric Pipelines?
Ist Ihre Datenplattform Microsoft Fabric, beginnen Sie mit den Pipelines von Fabric. Sie sind Low-Code, laufen auf der Kapazität, die Sie ohnehin zahlen, und können Notebooks, Dataflows und Aktualisierungen von Semantic Models anstoßen. Sie behandelt unser Vergleich von Fabric Data Factory und Azure Data Factory.
Greifen Sie zu Airflow, wenn Ihr Team ohnehin Python-DAGs schreibt, wenn Workflows Systeme außerhalb von Microsoft umfassen oder wenn Sie die Orchestrierung im Code definieren und in Git prüfen wollen. Wählen Sie noch die Plattform selbst, lesen Sie Warum Microsoft Fabric.
Quellen
Apache Airflow documentation - Apache Software Foundation
Fivetran pricing - Fivetran
What is an Apache Airflow job? - Microsoft Learn
Apache Airflow ist ein Open-Source-Tool, um Datenworkflows zu planen und zu orchestrieren. Sie definieren jeden Workflow in Python als DAG, eine Menge von Tasks mit Abhängigkeiten untereinander. Airflow führt die Tasks in der richtigen Reihenfolge nach Zeitplan aus, mit Wiederholungsversuchen und einer Weboberfläche, die zeigt, was lief und was fehlschlug. Airflow selbst ist unter der Apache-2.0-Lizenz kostenlos. Sie zahlen für die Server, auf denen es läuft, oder für einen Managed Service, der es für Sie betreibt.
Was Airflow leistet und was nicht
Airflow ist ein Orchestrator. Es entscheidet, wann jeder Schritt in welcher Reihenfolge läuft, und hält das Ergebnis fest. Die eigentliche Arbeit passiert woanders: eine SQL-Abfrage in Ihrem Warehouse, ein Spark-Job, ein API-Aufruf, ein dbt-Lauf.
Diese Unterscheidung erklärt die meisten Tool-Vergleiche. Airflow kopiert Daten nicht von selbst von Salesforce in Ihr Warehouse. Sie schreiben diesen Code selbst, rufen ein Tool auf, das es tut, oder nutzen eines der Provider-Pakete von Airflow, die die API eines Systems kapseln.
Wie ein DAG funktioniert
DAG steht für Directed Acyclic Graph, auf Deutsch gerichteter azyklischer Graph:
Gerichtet: Jede Abhängigkeit hat eine Richtung. Task B läuft nach Task A.
Azyklisch: Es gibt keine Schleifen. Ein Task kann nie, direkt oder indirekt, von sich selbst abhängen.
Jeder Workflow ist ein DAG. Jedes Kästchen darin ist ein Task, meist mit einem Operator erzeugt, etwa BashOperator, PythonOperator oder dem Operator eines Providers für Snowflake, Databricks oder Azure.
Ein minimaler DAG, der Daten extrahiert, transformiert und einen Bericht aktualisiert, einmal am Tag:
from datetime import datetime
from airflow import DAG
from airflow.operators.bash import BashOperator
with DAG(
dag_id="daily_sales_pipeline",
start_date=datetime(2026, 1, 1),
schedule="@daily",
catchup=False,
) as dag:
extract = BashOperator(task_id="extract", bash_command="python extract_sales.py")
transform = BashOperator(task_id="transform", bash_command="dbt run --select sales")
refresh = BashOperator(task_id="refresh_report", bash_command="python refresh_power_bi.py")
extract >> transform >> refreshDie letzte Zeile legt die Reihenfolge fest. transform wartet auf extract, und refresh_report wartet auf transform. Schlägt transform fehl, wiederholt Airflow den Task nach Ihren Einstellungen und führt die Aktualisierung nicht aus.
Importpfade und Parameternamen unterscheiden sich zwischen Airflow-Versionen. Prüfen Sie die Dokumentation der Version, die Sie betreiben.
Wofür Airflow genutzt wird
Einsatz | Beispiel |
|---|---|
ETL- und ELT-Pipelines | Aus einer Anwendungsdatenbank extrahieren, dbt-Modelle ausführen, ein Power BI Semantic Model aktualisieren |
Machine Learning | Ein Modell nachts neu trainieren, bewerten und nur veröffentlichen, wenn es das aktuelle schlägt |
Datenqualität | Nach jedem Ladevorgang Tests ausführen und die Pipeline stoppen, wenn einer fehlschlägt |
Operative Jobs | Dateien nach Zeitplan auf den SFTP-Server eines Partners exportieren |
Airflow oder Fivetran?
Die Tools erledigen unterschiedliche Aufgaben, die Frage lautet also meist, welches Sie wofür einsetzen.
Fivetran ist ein Managed Service für Datenbewegung. Sie wählen eine Quelle wie Salesforce oder eine Postgres-Datenbank, und Fivetran hält eine Kopie davon in Ihrem Warehouse und kümmert sich um Schemaänderungen und API-Limits. Sie schreiben keinen Code. Fivetran hat einen kostenlosen Tarif mit 500.000 monatlich aktiven Zeilen für Verbindungen und 5.000 Modellläufen pro Monat, darüber gibt es kostenpflichtige Tarife.
Airflow führt Tasks aus und ordnet sie. Es kann Fivetran, dbt, Spark oder Ihre eigenen Skripte aufrufen und entscheiden, was nach was läuft.
Ein gängiges Setup nutzt beide: Fivetran lädt die Rohdaten, dbt transformiert sie, und Airflow stößt jeden Schritt in Reihenfolge an und alarmiert Sie, wenn einer fehlschlägt. Die Transformationsebene behandelt unser Leitfaden zu dbt Cloud.
Wählen Sie Airflow allein, wenn Ihre Quellen keinen fertigen Connector haben oder wenn Sie volle Kontrolle über den Extraktionscode brauchen. Wählen Sie Fivetran, wenn Standard-Connectors existieren und Sie keinen Extraktionscode pflegen wollen.
Airflow oder AWS Step Functions?
AWS Step Functions ist ein Serverless-Dienst von AWS, um Workflows zu orchestrieren. Sie definieren einen Workflow in Amazon States Language, einem JSON-Format, oder in einem visuellen Designer, und er ruft AWS-Dienste wie Lambda, ECS und Batch auf.
Apache Airflow | AWS Step Functions | |
|---|---|---|
Workflow-Definition | Python-Code | JSON (Amazon States Language) oder visueller Designer |
Wo es läuft | Überall: auf Ihren Servern, Kubernetes oder einem Managed Service | Nur AWS |
Infrastruktur | Sie betreiben es selbst oder zahlen für einen Managed Service | Serverless, nichts zu betreiben |
Passt am besten zu | Datenpipelines über viele Systeme und Clouds | Workflows, die überwiegend aus AWS-Diensten bestehen |
Wo Airflow laufen kann
Selbst gehostet: auf eigenen Servern oder Kubernetes. Die Software ist kostenlos, aber Sie pflegen Scheduler, Worker und Metadatenbank.
Managed Services: Amazon Managed Workflows for Apache Airflow (MWAA), Google Cloud Composer und Astronomer betreiben Airflow für Sie.
Microsoft Fabric: Data Factory in Fabric enthält Apache Airflow Jobs, ein verwaltetes Airflow, das Ihre Python-DAGs neben Ihren Pipelines und Lakehouses ausführt. Prüfen Sie vorher die Airflow-Version und die Regionenliste: Microsoft dokumentiert pro Job eine unterstützte Version, eine Teilmenge der Regionen und keine Unterstützung für private Netzwerke.
Airflow oder Fabric Pipelines?
Ist Ihre Datenplattform Microsoft Fabric, beginnen Sie mit den Pipelines von Fabric. Sie sind Low-Code, laufen auf der Kapazität, die Sie ohnehin zahlen, und können Notebooks, Dataflows und Aktualisierungen von Semantic Models anstoßen. Sie behandelt unser Vergleich von Fabric Data Factory und Azure Data Factory.
Greifen Sie zu Airflow, wenn Ihr Team ohnehin Python-DAGs schreibt, wenn Workflows Systeme außerhalb von Microsoft umfassen oder wenn Sie die Orchestrierung im Code definieren und in Git prüfen wollen. Wählen Sie noch die Plattform selbst, lesen Sie Warum Microsoft Fabric.
Quellen
Apache Airflow documentation - Apache Software Foundation
Fivetran pricing - Fivetran
What is an Apache Airflow job? - Microsoft Learn
Mehr zu diesem Thema.
Zeigen Sie uns Ihren Bericht, dem niemand traut.
1 · Ein Gespräch von 30 Minuten.
2 · Wir sehen uns gemeinsam Ihre aktuellen Berichte an.
3 · Wir sagen Ihnen, was wir tun würden.
Zeigen Sie uns Ihren Bericht, dem niemand traut.
1 · Ein Gespräch von 30 Minuten.
2 · Wir sehen uns gemeinsam Ihre aktuellen Berichte an.
3 · Wir sagen Ihnen, was wir tun würden.
Zeigen Sie uns Ihren Bericht, dem niemand traut.
1 · Ein Gespräch von 30 Minuten.
2 · Wir sehen uns gemeinsam Ihre aktuellen Berichte an.
3 · Wir sagen Ihnen, was wir tun würden.
CaseWhen ist eine BI-Beratung aus Berlin. Wir bauen Reporting, dem die Geschäftsführung vertraut, auf dem Microsoft-Stack: Power BI, Fabric und Azure.
Berlin, Deutschland
Kostenlose Tools
CaseWhen ist eine BI-Beratung aus Berlin. Wir bauen Reporting, dem die Geschäftsführung vertraut, auf dem Microsoft-Stack: Power BI, Fabric und Azure.
Berlin, Deutschland
Kostenlose Tools
CaseWhen ist eine BI-Beratung aus Berlin. Wir bauen Reporting, dem die Geschäftsführung vertraut, auf dem Microsoft-Stack: Power BI, Fabric und Azure.
Berlin, Deutschland
