Blog

Open Sourcing der lokalen Entwicklung von Airflow

Kris Geusebroek

Aktualisiert Oktober 21, 2025
3 Minuten

Wir bei GoDataDriven lieben Open-Source-Software. Wir fördern nicht nur die Verwendung von Open-Source-Software, sondern geben auch gerne etwas an die Gemeinschaft zurück. Deshalb haben wir 2019 die Open-Source-Initiativen eingeführt. Jeder im Team kann eine Idee für einen Open-Source-Beitrag vorschlagen, sei es zu einem bestehenden Projekt oder zur Schaffung von etwas Neuem. Wir stellen diese dem Rest des Teams vor und die Leute stimmen für ihre Lieblingsinitiative ab.

Im ersten Quartal 2019 haben einige Initiativen ihren Anfang gemacht, darunter auch unsere. Unser Vorschlag war es, die Ausführung und Entwicklung von Airflow-Workflows auf Ihrem lokalen Rechner zu vereinfachen. So erhalten Sie schnelles Feedback darüber, ob die Änderungen, die Sie an Ihrer DAG vorgenommen haben, in Ordnung sind. Betrachten Sie es als Ihre Integrationstestumgebung für die Entwicklung von Airflow-DAGs.

Wir haben unsere Erfahrungen aus ähnlichen Projekten bei verschiedenen Kunden kombiniert und eine generische Lösung entwickelt, die wir Whirl nannten.

Logo

Wir präsentieren Whirl

Die Idee von whirl ist ziemlich einfach: Verwenden Sie Docker-Container, um Apache Airflow und die anderen in Ihrem Arbeitsablauf verwendeten Komponenten zu starten. So erhalten Sie eine Kopie Ihrer Produktionsumgebung, die auf Ihrem lokalen Rechner läuft. So können Sie Ihre DAG von Anfang bis Ende lokal ausführen - mit demselben Code wie in der Produktion. Wenn Sie den Erfolg Ihrer Pipeline sehen können, gewinnen Sie mehr Vertrauen in die Logik, die Sie erstellen/refaktorieren, und in die Integration der verschiedenen Komponenten, mit denen Sie konfrontiert sind. Ein zusätzlicher Vorteil ist, dass (neue) Entwickler eine isolierte Umgebung erhalten, um mit Ihren Workflows zu experimentieren.

whirl verbindet den Code Ihrer DAG und Ihre (Mock-)Daten mit dem Apache Airflow-Container, den es in Gang setzt. Durch die Verwendung von Volume Mounts können Sie Änderungen an Ihrem Code in Ihrer bevorzugten IDE vornehmen und die Auswirkungen sofort in der laufenden Apache Airflow-Benutzeroberfläche auf Ihrem Rechner sehen. Dies funktioniert sogar mit benutzerdefinierten Python-Modulen, die Sie entwickeln und in Ihren DAGs verwenden.

Sie finden das Projekt auf unserem Github: github.com/godatadriven/whirl Eine Anleitung zur Verwendung von whirl finden Sie in der README des Projekts.

Schlusswort

Eine Woche Zeit zu haben, um uns speziell auf dieses Projekt zu konzentrieren, hat uns geholfen, unsere Idee in relativ kurzer Zeit zu veröffentlichen. Wir glauben, dass wir durch die Kombination von Ideen aus mehreren Projekten zu einer noch besseren Projektstruktur gekommen sind. Wir werden whirl bei neuen Kunden einsetzen. Hoffentlich ist es auch für andere Airflow-Entwickler von Nutzen.

Möchten Sie das Innenleben von Apach Airflow kennenlernen? Wir unterrichten einen Kurs mit allem, was zu den Interna, der Terminologie und den besten Praktiken bei der Arbeit mit Airflow gehört, mit praktischer Erfahrung beim Schreiben und Pflegen von Datenpipelines.

Verfasst von

Kris Geusebroek

Contact

Let’s discuss how we can support your journey.