Lyft öffnet seine Orchestrierungs-Engine Flyte

Mit der nun als Open Source vorliegenden Flyte-Engine sollen komplexe Daten mehr Struktur und Intelligenz bekommen.

In Pocket speichern vorlesen Druckansicht
Lyft öffnet seine Orchestrierungs-Engine Flyte

(Bild: kentoh / Shutterstock.com)

Lesezeit: 2 Min.
Von
  • Nina-Jenni Badelt

Die Engineering-Abteilung des US-amerikanischen Fahrdienstvermittlers Lyft hat mit Flyte eine auf den Prinzipien der strukturierten Programmierung basierende Orchestrierungs-Engine an den Start gebracht. Sie soll sich der verteilten Verarbeitung stark simultan skalierbarer und wartungsintensiver Workflows annehmen. In Zeiten hochkomplexer Berechnungen soll Flyte darüber hinaus die Orchestrierung von Daten und das Machine Learning aus der Cloud vereinfachen.

Durch Plattformabstraktion löst es die Schwierigkeit des Abhängigkeitsmanagements. Das birgt die Möglichkeit, Daten innerhalb von Teams wiederzuverwenden und zu teilen, sodass ein Problem nur einmal gelöst werden muss. Es ist offenbar keine zusätzliche Infrastruktur nötig, und dank seiner Mandantenfähigkeit können Anwender in einem isolierten Repo arbeiten, ohne den Rest der Plattform zu beeinträchtigen. Ihr Code ist versioniert und mit seinen Abhängigkeiten containerisiert. Jede Ausführung ist so reproduzierbar.

Indem Flyte jeden Task parametrisiert und stark typisiert, lassen sich Workflows leicht wiederholen und offenbar viele Task-Varianten ausprobieren. Die versionierten Tasks sind auch innerhalb der Teams teilbar.

Jeder Schritt eines heterogenen Workflows lässt sich durch die Verbindung von Container-Images mit den Tasks in einer anderen Programmiersprache schreiben, zur Auswahl stehen derzeit TypeScript, Go und Python. Durch Erweiterungen können sogenannte Flyte Tasks wohl beliebig komplex werden. Von einer einzelnen Containeranwendung über eine Remote-Anfrage in einem Hive-Cluster bis hin zu einer dezentralisierten Spark-Anwendung ist anscheinend vieles möglich.

Für komplexere Tasks und die Integration von Single-Points-Solutions in die Infrastruktur bietet Flyte folgende Extension-Kits an: einerseits FlyteKit Extensions für die Integration neuer Services oder Systemen und andererseits Backend-Plug-ins. Letztere helfen, wenn eine tiefgehende Kontrolle bei der Ausführungssemantik der Tasks wünschenswert ist. Sie lassen sich nutzen, um Kubernetes-Ressourcen zu kreieren und zu managen, inklusive CRDs (Custom Resource Definitions) wie Spark oder Flink auf Kubernetes-Installationen oder andere Remote-Systeme wie Amazon Sagemaker, Qubole und BigQuery.

Mehr Infos zu Flyte finden sich in der Ankündigung und auf GitHub, wo die Engine unter der Apache Software License zu finden ist. Flyte kommt seit über drei Jahren bei Lyft zum Einsatz. (ane)