Netflix gibt Entwickler-Tools Mantis und Polynote als Open Source frei
Gleich zwei Werkzeuge stellt Netflix der Community zur Verfügung: Mantis, eine Plattform für Stream Processing, und Polynote, eine polyglotte Notebook-Umgebung.
- Björn Bohn
Der Streaminganbieter Netflix hat zwei neue Werkzeuge für Entwickler quelloffen zur Verfügung gestellt: Mantis und Polynote. Ersteres ist eine Plattform, die sich um das Thema Stream Processing kümmert, zweiteres eine polyglotte Notebook-Umgebung für Machine-Learning- (ML) und Data-Science-Anwendungen. Beide sind bei Netflix bereits seit einiger Zeit im Einsatz.
Ein kürzer Überblick zu Mantis
Mantis soll es Entwicklern ermöglichen, ihre Microservices ohne größeren Aufwand zu beobachten. Laut Netflix kann die Plattform binnen weniger Sekunden Metriken akkurat aufzeigen und dadurch die Suchzeit bei Fehlern reduzieren. Im Fokus steht außerdem eine Demokratisierung der Events: Applikationen können jeden Event Stream auf Wunsch abrufen. Dadurch können Entwickler wohl alle Daten auf Mantis veröffentlichen, was normalerweise zu hohe Betriebskosten verursacht.
Mantis setzt dabei auf ein reaktives Modell, das vier Prinzipien verfolgt. Anwender erhalten Zugriff auf die einzelnen Events in ihrem natürlichen Zustand, außerdem sollen sie sie in Echtzeit abrufen können. Darüber hinaus bietet die Plattform die Möglichkeit, neue Fragen an den Datensatz zu stellen, ohne neue Mechanismen dafür in Applikationen einbauen zu müssen. Als letzten Punkt nennt Netflix eine angestrebte Kosteneffizienz, um auch in skalierbaren Anwendungen einsetzbar zu sein.
Wer mehr über Mantis erfahren möchte, findet in einem Blogbeitrag von Netflix mehr Informationen. Das Projekt findet sich auf GitHub.
Scala, Python und SQL mit Polynote
Netflix hat Polynote ursprünglich entwickelt, um die eigene Machine-Learning-Plattform, die auf der Java Virtual Machine basiert und stark auf Scala setzt, mit dem Ökosystem an ML-Bibliotheken rund um die Programmiersprache Python zu verbinden. Neben der Unterstützung für die Sprachen bietet Polynote auch eine Integration mit Apache Spark und einige Komfortfunktionen für Entwickler, mit denen Netflix sich von bestehenden Notebook-Angeboten wie Jupyter und Zeppelin abgrenzen möchte.
Dazu zählen Features wie Autocomplete und Hinweise für Parameter, die Anwender auch von vollwertigen Entwicklungsumgebungen kennen. Ein Texteditor mit LaTeX-Support ist ebenfalls inklusive. Entwickler können mit Polynote Python, Scala und SQL innerhalb eines einzelnen Notebooks mischen und Definitionen über die Sprachen hinweg teilen.
Weitere Details bietet ein Medium-Beitrag zur Veröffentlichung. Wer Polynote ausprobieren möchte, kann im dazugehörigen GitHub-Repository fündig werden. (bbo)