Ich habe das Tool ausprobiert, das Apache Airflow den Rang ablaufen will (Kestra)

BBetter Stack
컴퓨터/소프트웨어창업/스타트업AI/미래기술

스크립트

00:00:00Das ist Kestra, ein Startup, das kürzlich 25 Millionen Dollar mit einem einzigen Versprechen eingesammelt hat:
00:00:06Apache Airflow töten. Und ihr ganzer Trick ist fast schon beleidigend einfach, wenn man ihn hört.
00:00:12Man hört auf, seine Datenpipelines in Python zu schreiben, und fängt an, sie in YAML zu schreiben.
00:00:17Bleibt dran, denn diese eine Sache ist größer, als sie aussieht.
00:00:21Ich zeige euch in den nächsten Minuten, wie das alles funktioniert.
00:00:29Stellt euch nun eine Kette von Jobs vor, die nacheinander ausgeführt werden müssen. Daten abrufen, bereinigen,
00:00:35in eine Datenbank laden, dann eine API aufrufen, um den nächsten Schritt zu starten. Das könnte man mit
00:00:41Cron erledigen. Aber sobald ein Schritt fehlschlägt, ist das nicht gut. Kein erneuter Versuch, kein Log, keine Ahnung, was wirklich kaputtgegangen ist.
00:00:48Das ist genau das Chaos, das Orchestrierungstools eigentlich beheben sollten. Und Airflow war ehrlich gesagt
00:00:54jahrelang der König unter ihnen. Das Problem mit Airflow ist, dass jede einzelne Pipeline ein
00:00:58Python-Programm ist, das man schreiben, pflegen und debuggen muss. Das ganze System ist schwerfällig und es überhaupt
00:01:04auf dem eigenen Rechner zum Laufen zu bringen, würde den meisten von uns nicht wirklich Spaß machen. Wenn ihr es mögt, Coding-Tools
00:01:09zu finden, die euren Workflow beschleunigen, abonniert den Kanal. Wir veröffentlichen ständig neue Videos.
00:01:14Nun, Kestras ganzer Ansatz ist, dass ein Workflow überhaupt kein Programm sein sollte. Er sollte einfach nur
00:01:19eine Konfiguration sein. Lasst mich euch zeigen, was das wirklich bedeutet. Ich bin hier im Browser-Editor,
00:01:24und schreibe einen winzigen Flow in YAML. Ein paar Schritte. Einer führt ein Python-Skript aus. Einer führt einen Shell-Befehl
00:01:32aus. Ich kann auf Ausführen klicken und den Bildschirm beobachten. Das Diagramm leuchtet live Schritt für Schritt auf,
00:01:41während jeder Schritt abläuft. Ich kann zu einer Zeitachsen-Ansicht springen, um zu sehen, wie lange jedes Stück gedauert hat, und direkt in
00:01:47ein Log für jeden beliebigen Schritt klicken. Diese ganze Pipeline lief gerade durch, und ich habe nie eine einzige Zeile
00:01:53Orchestrierungscode geschrieben. Hier ist also, wie dieses Ding tatsächlich funktioniert. Jeder Workflow ist das, was sie
00:02:00einen Flow nennen, und eigentlich ist es nur YAML. Eine Liste von Aufgaben und ein Trigger, der sie startet. Die Aufgaben sind sprachunabhängig
00:02:08und das ist hier der Clou. Ein Flow kann Python, Node, dann Bash, dann eine SQL-Abfrage ausführen
00:02:15und dann einen Container starten, alles in einem Rutsch. Airflow will euch unbedingt in Python haben. N8N will
00:02:22euch in JavaScript. Kestra ist es völlig egal, worin der jeweilige Schritt geschrieben ist, und die Trigger sind
00:02:27direkt eingebaut. Führt es zeitgesteuert aus wie Cron, startet es, wenn ein Webhook feuert,
00:02:34oder eine Datei in einem Bucket landet, oder ruft es über die API auf. Noch eine Sache, die ich mag: Code und der visuelle
00:02:39Builder bleiben miteinander verknüpft. Das Bearbeiten des einen aktualisiert automatisch das andere. Warum sollte
00:02:46man sich dafür interessieren, im Vergleich zu den Tools, die wir bereits nutzen, wie Airflow? Gegenüber Airflow wird eure Pipeline
00:02:53zu einer sauberen Konfiguration, die jemand, der kein Python kann, bei Pull-Requests lesen und genehmigen könnte.
00:02:59Und die Entwickler sagen, die Engine bewältigt parallele Arbeit besser als Airflows
00:03:05Scheduler. Das ist toll, aber im Vergleich zu Zapier und Make gibt es kein SaaS und keine Abrechnung pro
00:03:12Task. Es ist für Entwickler und echte Infrastruktur gebaut und man hostet es selbst. Und gegenüber dem alten
00:03:19Cron bekommt man Wiederholungen, Timeouts, eine echte Abhängigkeitskarte und eine echte Benutzeroberfläche direkt ab Werk. Kestra sagt,
00:03:26dass sie 2025 zwei Milliarden Workflows ausgeführt haben. Das ist das 20-fache des Vorjahres. Und es gibt Namen
00:03:32von Kunden wie Apple, JP Morgan, Toyota und Bloomberg. Diese Wachstumszahlen stammen direkt
00:03:38vom Unternehmen, nicht von einem externen Audit. Also genießt das mit Vorsicht. Aber immer mehr
00:03:43Leute setzen darauf, dass dieser deklarative, konfigurierbare Ansatz der Weg ist, in den sich das gesamte Feld
00:03:49entwickelt. Okay, ein paar Haken gibt es. Erstens ist dies eine Java-App. Und die JVM ist hungrig. Ihr braucht
00:03:58etwa 4 GB RAM und ein paar Kerne, nur um den Server in Ruhe laufen zu lassen. Zweitens ist YAML ein Traum für
00:04:06saubere, lineare Pipelines. Aber sobald man komplexe, dynamische Verzweigungslogik braucht, stößt man an Grenzen.
00:04:11Und ehrlich gesagt kommen Python-basierte Tools damit deutlich besser klar. Und zuletzt ist Kestra Open Core. Also
00:04:18die Engine selbst ist wirklich Open Source, aber Single Sign-On, rollenbasierte Zugriffskontrolle und Audit-Logs,
00:04:24diese Dinge liegen hinter einer Paywall. Die kostenlose Version bietet euch also einen gemeinsamen Login. Das war's.
00:04:31Das ist völlig in Ordnung, wenn ihr das alleine macht. Aber ein Problem an dem Tag, an dem ihr ein echtes Multi-User-Kontrollsystem
00:04:36braucht, ohne dafür bezahlen zu wollen. Solltet ihr es also benutzen? Nun, dieser letzte Teil könnte ausschlaggebend
00:04:42dafür sein. Wenn ihr wollt, dass eure Orchestrierung eine lesbare Konfiguration statt Python ist, ist das ehrlich gesagt
00:04:47ein cooles Tool. Und es läuft nativ auf Apple Silicon. Es auf Macs zu starten, ist ein einziger
00:04:53Docker-Run-Befehl und das Dashboard erscheint auf Localhost. Probiert es aus. Oder falls ihr es schon
00:04:59ausprobiert habt, hinterlasst eure Gedanken unten. Wenn euch Coding-Tipps und Tricks wie diese gefallen, abonniert den Kanal.
00:05:03Wir haben ständig neue Videos.

핵심 요약

Kestra transformiert die Datenorchestrierung, indem es die Abhängigkeit von Python-Programmen durch eine deklarative YAML-Konfiguration ersetzt und so die Wartung sowie Visualisierung komplexer Workflows vereinfacht.

하이라이트

  • Kestra ersetzt komplexe Python-basierte Datenpipelines durch deklarative YAML-Konfigurationen.

  • Das System unterstützt sprachunabhängige Aufgaben, die Python, Node, Bash und SQL innerhalb eines einzigen Flows kombinieren.

  • Im Jahr 2025 verarbeitete die Plattform zwei Milliarden Workflows, was das 20-fache des Vorjahres darstellt.

  • Die Java-basierte Architektur benötigt für den Serverbetrieb mindestens 4 GB RAM.

  • Sicherheitsfunktionen wie Single Sign-On und rollenbasierte Zugriffskontrolle sind in der Open-Core-Version kostenpflichtig.

타임라인

Probleme klassischer Orchestrierung

  • Herkömmliche Tools wie Apache Airflow erzwingen die Programmierung von Datenpipelines in Python.
  • Der Betrieb und das Debugging von Airflow-Pipelines sind zeitaufwendig und schwerfällig.

Die Orchestrierung von Datenabläufen scheitert bei einfachen Tools wie Cron oft an mangelnden Fehlerprotokollen und fehlenden Wiederholungsmechanismen. Airflow galt lange Zeit als Standard, leidet jedoch unter einer hohen Komplexität, da jeder Workflow als eigenständiges Python-Programm gepflegt werden muss.

Der YAML-basierte Ansatz von Kestra

  • Workflows werden in Kestra ausschließlich als YAML-Konfiguration definiert.
  • Die Plattform ermöglicht die nahtlose Integration verschiedener Sprachen und Technologien innerhalb einer Pipeline.
  • Ein integrierter visueller Editor synchronisiert sich in Echtzeit mit dem zugrunde liegenden YAML-Code.

Die Architektur von Kestra ist sprachunabhängig und führt Aufgaben wie Python-Skripte, SQL-Abfragen oder Container-Starts in einer Kette aus. Trigger für diese Workflows umfassen Zeitpläne, Webhooks, Datei-Events in Buckets oder API-Aufrufe. Nutzer können jeden Schritt direkt über eine grafische Oberfläche beobachten und Protokolle individuell einsehen.

Vergleich und Marktakzeptanz

  • YAML-Konfigurationen sind für Dritte ohne Python-Kenntnisse leichter lesbar und prüfbar.
  • Die Engine bietet eine höhere Leistung bei parallelen Prozessen als der Airflow-Scheduler.
  • Große Unternehmen wie Apple, JP Morgan und Toyota setzen das System bereits ein.

Im Vergleich zu SaaS-Lösungen wie Zapier bietet Kestra eine Infrastruktur für Entwickler mit Selbsthosting-Option ohne nutzungsbasierte Abrechnung pro Task. Der deklarative Ansatz bietet gegenüber Cron fortgeschrittene Funktionen wie Timeouts und eine übersichtliche Abhängigkeitskarte.

Technische Grenzen und Lizenzmodell

  • Die Java-basierte Anwendung erfordert signifikante Hardware-Ressourcen wie 4 GB RAM.
  • Komplexe dynamische Verzweigungslogik ist in rein deklarativem YAML schwieriger umzusetzen als in Python.
  • Unternehmensfunktionen wie Audit-Logs sind in der kostenlosen Open-Source-Variante nicht enthalten.

Trotz der Vorteile bei linearen Pipelines stoßen Nutzer bei sehr dynamischen Anforderungen an die Grenzen von YAML. Zudem schränkt das Open-Core-Modell den Funktionsumfang der kostenlosen Version ein, was besonders in Multi-User-Umgebungen ohne Bezahlplan zu Herausforderungen führen kann.

커뮤니티 글

아직 글이 없습니다. 이 영상에 대한 첫 번째 글을 작성해 보세요!

이 영상에 대해 글쓰기