So vereinfachen Sie das Airflow 2.0-Setup mit der DAG-Versionierung und -Serialisierung

May 8, 2025
6 min read
Loading the Elevenlabs Text to Speech AudioNative Player...

Die Veröffentlichung der neuen Version einiger Software kann Dateningenieure vor erhebliche Herausforderungen stellen. Diejenigen, die benutzen Apache Airflow und die bereits auf Airflow 2.0 gestoßen sind, werden sicherlich zustimmen, dass selbst geringfügige Änderungen die Funktionsweise von DAGs völlig verändern oder sogar blockieren können. Hat sich Airflow zum Besseren verändert? Wie können Sie die Einrichtung mit DAG-Versionierung und -Serialisierung vereinfachen? Obwohl einige Funktionen früherer Versionen beibehalten wurden, gibt es im neuen Airflow einige wichtige Änderungen. So enthält er beispielsweise eine vollständige REST-API. Dies kann beim Upgrade einige neue Herausforderungen mit sich bringen. Zum Glück gibt es auch Änderungen, die die tägliche Arbeit Ihrer Dateningenieure vereinfachen können. Lesen Sie weiter unten mehr über DAG-Versionierung und -Serialisierung.

Airflow 2.0 — was hat sich geändert?

Der Einführung einer neuen Version einiger Software geht immer eine Mischung aus Aufregung und Besorgnis der Fachleute voraus, die sie täglich verwenden. Wirken sich Änderungen positiv oder negativ auf die Effizienz eines Teams aus? Entspricht das neue Programm den Bedürfnissen Ihres Unternehmens? Wird es leicht genug sein, sich daran zu gewöhnen? Es gibt noch viele Fragen, die beantwortet werden müssen, aber Airflow 2.0 ist bereits da, sodass Sie wahrscheinlich versuchen können, sie selbst zu beantworten oder an der Diskussion teilzunehmen. Du kannst uns jederzeit kontaktieren, um unseren Support zu erhalten, aber vorher sind hier einige der wichtigsten Änderungen, über die du Bescheid wissen solltest:

  • Eine neu gestaltete Benutzeroberfläche — das neue, übersichtliche und leicht lesbare Dashboard ist sicherlich eine positive Veränderung.
  • Ein effizienter Scheduler — Der Scheduler ist eine der Kernfunktionen von Airflow und aufgrund der Änderungen ist seine Leistung jetzt viel besser als zuvor. Es ist auch möglich, mehrere Scheduler-Instanzen in einem aktiven/aktiven Modell auszuführen, was die Verfügbarkeit und die Ausfallsicherheit erhöht, was für die Stabilität der jeweiligen Airflow-Lösung entscheidend ist.
  • Vollständige REST-API — Die neue, vollständig unterstützte API kann beim Upgrade der Software zu Problemen führen, erleichtert aber sicherlich den Zugriff auf Plattformen von Drittanbietern.
  • Intelligente Sensoren — In den neuen Airflows werden Sie dank DAG-Zentralisierung und Stapelverarbeitung eine verbesserte Effizienz bei Aufgaben mit langer Laufzeit feststellen.
  • DAG-Serialisierung — In der neuen Version von Airflow analysiert der Systemserver DAGs anders, da nur der Scheduler Zugriff auf die DAG-Datei benötigt.
  • DAG-Versionierung — Benutzer erhalten zusätzliche Unterstützung für das Speichern vieler Versionen serialisierter DAGs.
  • Aufgabengruppen — Anstatt SubDAGS zu verwenden, was zu Leistungsproblemen führte, besteht die Möglichkeit, Taskgruppen zu verwenden, um Aufgaben in der Diagrammansicht der DAG zu organisieren. Es wird in der Airflow-Benutzeroberfläche ausgeführt, sodass die Leistung dadurch nicht beeinträchtigt wird. Weniger Komplexität mit weniger Code.

Sicherlich gab es viele Verbesserungen, und es ist normal, dass Benutzer einige Zeit benötigen, um sich an sie zu gewöhnen. In diesem Artikel möchten wir uns auf die letzten beiden Änderungen konzentrieren und erklären, wie sie die Einrichtung von Airflow 2.0 vereinfachen.

DAG-Serialisierung früher und jetzt

Serialisierung ist eine ziemlich wichtige Funktion von Apache Airflow. Der Begriff bezieht sich auf das Speichern einer serialisierten Darstellung der DAGs in der Datenbank. Sie werden im Lightweight JSON-Format gespeichert. Einfach gesagt, der Scheduler kann DAG-Dateien analysieren und eine Darstellung in der Datenbank speichern, sodass sie später vom Webserver abgerufen werden kann, um die Benutzeroberfläche zu füllen. Die Verarbeitung von DAGs sowohl auf dem Webserver als auch auf dem Scheduler ist aufgrund unnötiger Doppelarbeit ziemlich ineffizient, was sich negativ auf die Gesamtleistung von Airflow auswirkt. In der alten Version von Airflow benötigten sowohl der Webserver als auch der Scheduler Zugriff auf die DAG-Dateien, um sie lesen und analysieren zu können. In Airflow 2.0 können Parsing und Serialisierung so durchgeführt werden, dass der Scheduler nur auf die Metadaten-Datenbank zugreift und der Webserver nur auf Metadaten zugreift. Dies verbessert die Effizienz von Airflow, da die Belastung des Webservers reduziert wird, da DAGs aus den DAG-Dateien nicht analysiert werden müssen. Serialisierte DAGs werden einfach aus der Datenbank abgerufen. Bezeichnenderweise ist dank der Änderungen in der neuen Version von Airflow der Zugriff auf DAG-Dateien per Webserver nicht mehr erforderlich, sodass die Airflow-Setup und die DAG-Bereitstellung viel einfacher sind als zuvor.

DAG-Versionierung — was hat sich geändert?

Wie Sie wissen, werden Datenpipelines im Airflow durch DAGs repräsentiert. Ein Unternehmen ist wie ein lebender Organismus — es verändert sich im Laufe der Zeit, und nach einiger Zeit kann es andere Geschäftsanforderungen haben als früher. DAG-Änderungen entwickeln sich ebenso wie die Geschäftsanforderungen. Für diejenigen, die täglich mit Airflow arbeiten, ist es kein Geheimnis, dass das Hinzufügen von Aufgaben zu einer vorhandenen DAG einen merkwürdigen Nebeneffekt hatte: Aufgaben ohne Status wurden in der Verlaufsübersicht angezeigt. Dies könnte zu Problemen bei der Analyse von Protokollen und beim Anzeigen von Code führen, der dem aktuellen DAGRUN zugewiesen ist. Es ist wichtig, dass Airflow-Benutzer überprüfen können, wie eine bestimmte DAG in der Vergangenheit ausgeführt wurde. Zum Glück bietet die neue Version von Apache Airflow Lösungen für viele frühere Probleme. Nach dem Upgrade auf Version 2.0 erhalten Sie zusätzliche Unterstützung für das Speichern vieler Versionen serialisierter DAGs. Die Beziehungen zwischen DAGRuns und DAGs werden korrekt dargestellt.

Können Sie reibungslos von der Vorgängerversion zu Airflow 2.0 wechseln?

Apache Airflow 2.0 bietet Benutzern recht interessante Änderungen und neue Funktionen. Es wäre eine Schande, nicht alles zu nutzen, um die Effizienz Ihres Unternehmens zu verbessern. Denken Sie daran, dass Airflow 2.0 keine monolithische Architektur hat. Die neuen Funktionen sind in ein Kernpaket und ein Paket mit 61 Anbietern aufgeteilt, und jedes davon ist für einen bestimmten externen Dienst oder eine bestimmte Datenbank vorgesehen. Aus diesem Grund können Sie von einer benutzerdefinierten Airflow 2.0-Installation profitieren, um dieses Unternehmenstool an Ihre spezifischen Bedürfnisse anzupassen. Vielleicht sind Sie sich nicht sicher, wie Sie die neue Version von Airflow richtig installieren oder wie Sie sie am besten einrichten, um sie optimal nutzen zu können. Zum Glück sind Sie nicht auf sich allein gestellt. Unser erfahrenes Team kann Ihnen bei der Installation und Konfiguration helfen und eine Schulung für Ihr internes Team vorbereiten. Lass es uns wissen wenn Sie unsere Hilfe benötigen. Weitere Informationen zu Airflow finden Sie in unserem Blog:

Share this post
DevOps
MORE POSTS BY THIS AUTHOR

Curious how we can support your business?

TALK TO US