The playground

More information here

Die Vergangenheit, Gegenwart und Zukunft des Streamings: Flink, Spark und die Bande

Spark: Das Big Data Tool du jour wird automatisiert Streaming ist einer der Top-Trends, mit denen wir Schritt gehalten haben. Die neueste Episode in dieser Saga war das Hinzufügen von ACID-Funktionen zu Apache Flink, wie Tony Baer von ZDNet letzte Woche berichtete. Diese Ankündigung, die bei Flink Forward in Berlin gemacht wurde, war der Hintergrund […]

Spark: Das Big Data Tool du jour wird automatisiert

Streaming ist einer der Top-Trends, mit denen wir Schritt gehalten haben. Die neueste Episode in dieser Saga war das Hinzufügen von ACID-Funktionen zu Apache Flink, wie Tony Baer von ZDNet letzte Woche berichtete. Diese Ankündigung, die bei Flink Forward in Berlin gemacht wurde, war der Hintergrund für eingehende Gespräche mit Führungskräften, Ingenieuren und Anwendern, die dazu beitragen können, die Dinge in einen Kontext zu stellen.

Wie Baer bemerkte, gibt es zunächst eine API für Flink, die von GitHub heruntergeladen werden kann, aber nur für einen einzelnen Stream funktioniert. Die Version mit dem „Runner“ für mehrere parallele Streams ist Teil der Data Artisans-Plattform – der kommerziellen Inkarnation von Flink.

Außerdem: Apache Flink übernimmt ACID

Dies ist überhaupt nicht überraschend, da Data Artisans, der Anbieter, der Flink unterstützt und einen großen Teil seiner Vollzeit-Mitarbeiter beschäftigt, eine Open Core-Richtlinie hat. Dies ist eine sehr verbreitete Richtlinie in der Open-Source-Welt, die auch Data Artisans / Flinks Hauptkonkurrent Databricks / Apache Spark verfolgt.

Wie viele Streaming-Engines braucht die Welt?

Wie viele Streaming-Engines braucht die Welt, würde Baer sagen? Gute Frage, die auch in zwei Folgefragen umformuliert werden kann: Wie viele Anbieter können überleben, wenn Sie das tun, was Data Artisans und Databricks tun, oder wie wählen Sie eine Streaming-Engine aus?

Die Antwort auf die erste Frage ist an dieser Stelle genau zwei: Data Artisans und Databricks. Ein dritter Konkurrent, DataTorrent, und seine Apache Apex-Engine, die wir vor einiger Zeit behandelt haben, ging in die Hose. Es scheint, als ob die ungewöhnliche Botschaft „Wir werden alles tun, einschließlich des Aufbaus der Engine unseres Konkurrenten“ ein letzter Versuch war, sich über Wasser zu halten, indem ein Ansatz gewählt wurde, der eher für eine Beratung als für einen Anbieter hinter einem Open-Source-Projekt geeignet ist.

Auch: Echtzeit-Anwendungen gehen Orte

So oder so, das bedeutet, es gibt eine Reihe von Waisen in der Open-Source-Streaming-Lösungen Raum jetzt: Plattformen ohne einen Anbieter zu unterstützen, eine gehärtete Version, und steuern ihre Entwicklung. Neben Apex enthält die Liste auch Apache Storm und Apache Samza. Storm ist älter und reifer als Samza und wird auch von Hortonworks unterstützt.

Das Kerngeschäft von Hortonworks ist jedoch nicht das Streaming, und wenn Sie Storm verwenden und Enterprise-Support-Levels haben möchten, müssen Sie sich anscheinend auch für den gesamten Hortonworks-Stack entscheiden. Wir wissen nicht, ob Hortonworks Pläne hat, für Storm aufzusteigen, aber wir haben derzeit keine solchen Signale.

Es gibt auch eine Reihe von Closed-Source-Lösungen für das Streaming, aber es sieht so aus, als hätten sie einen harten Kampf zu führen. Sie haben möglicherweise ihre Vorzüge und ihren Kundenstamm zu zeigen, aber vieles davon basiert auf alten Verträgen und Beziehungen. In einer „Try before you buy“, einer schnelllebigen Open-Source-Welt und einem expandierenden Markt für Streaming wird es nicht einfach sein, neue Verträge zu gewinnen.

Außerdem: Die Zukunft der Zukunft: Spark und Big Data Insights

Und dann haben wir natürlich auch die Cloud-Anbieter: AWS mit Kinesis, Google Cloud mit Dataflow und Azure mit Stream Analytics. Das übliche Motiv spielt sich auch hier ab. Diese Motoren sind möglicherweise die für Ihre Anforderungen am besten geeigneten. Wenn Sie jedoch bereits AWS, Google Cloud oder Azure verwenden, ist es für Sie sehr einfach und verlockend, sich anzumelden und ihre Streaming-Lösung in Ihre Anwendungen zu integrieren.

Einführung von Streaming-Engines und Wettbewerb

Im Gespräch mit Kostas Tzoumas, CEO von Data Artisans, über den Streaming-Markt machte Tzoumas deutlich, was er als größten Wettbewerb für Data Artisans ansieht: Legacy. Tzoumas verzichtete bewusst darauf, Data Artisans / Flink mit anderen Optionen zu vergleichen, und konzentrierte sich stattdessen auf ihre Bemühungen, in Bezug auf Evangelisierung und Verkauf zu erreichen und zu skalieren.

Seine Ansichten fanden bei vielen Flink Forward-Teilnehmern Anklang, darunter auch bei einigen der hochkarätigsten Kunden von Data Artisans. Delegierte mit vielen technischen praktischen Erfahrungen von Alibaba, Netflix und Microsoft betonten, dass sie jeden Tag das Paradigma ändern und lernen müssen, mit Streaming zu arbeiten.

Auch: Wir unterbrechen diese Revolution: Apache Spark ändert die Regeln

Einige ihrer Kommentare drehten sich um Dinge wie die Notwendigkeit, Streaming mit all der Zuverlässigkeit arbeiten zu lassen, die in der Batch-Welt gegeben ist, zu lernen, im Vergleich zu Single-Threaded-Anwendungen durchdachter zu programmieren und die Abstraktionsebene zu erhöhen. data Artisans scheint zuzuhören, nach dem zu urteilen, was auf seiner Agenda steht.

flink7.jpg

Die Entwicklung des Streamings. (Bild: Data Artisans)

Wir haben bereits die Einführung von ACID erwähnt, um die Zuverlässigkeit zu gewährleisten, die zu einem großen Teil von den Anforderungen großer Finanz- und E-Commerce-Organisationen getrieben wurde, die die Data Artisans-Plattform nutzen. Eine weitere wichtige Wette für Flink ist der Fortschritt in Richtung der Vereinheitlichung von APIs für Streaming und Batch, an denen Alibaba gearbeitet hat und die in die Kern-Flink-Codebasis integriert werden sollen.

Auch: Spark Summit 2018 Vorschau: KI in den Vordergrund stellen

Flink verfügt über eine Reihe von APIs – Datenströme, Datensätze, Prozessfunktionen, die Tabellen-API und in letzter Zeit SQL, die Entwickler für verschiedene Aspekte ihrer Verarbeitung verwenden können. Idealerweise möchten die Leute SQL für alles verwenden. Dies würde nicht nur das Leben von Entwicklern vereinfachen, sondern auch Flink für nicht-technische Benutzer zugänglicher machen.

Die Notwendigkeit, Datenhandwerker nachhaltig zu machen, kann auch mit anderen getroffenen Entscheidungen zu tun haben. Die Tatsache, dass die Data Artisans-Plattform nicht in der Cloud verfügbar ist, ist beispielsweise ein auffälliger Unterschied zu Databricks, das eine reine Cloud-Strategie für seine eigene Plattform propagiert und die iPaaS-Karte spielt.

Aber wenn Ihre Hauptkunden Giganten mit eigener Infrastruktur sind, wie es für Datenkünstler der Fall zu sein scheint, ist es weniger sinnvoll, ihnen eine Cloud-Version anzubieten. Das mag auch Tzoumas ‚Kommentar erklären, als er sagte, dass sie nicht viel mit Databricks / Spark konkurrieren. Nicht, dass Flink für kleinere Organisationen nicht attraktiv wäre, aber die Geschichte der Verwendung von Flink plus Support und Beratung anstelle der Data Artisans-Plattform haben wir häufiger von ihnen gehört.

Data Artisans und Apache Flink in Zukunft

Die (Zwillings-) Versionen 1.4 und 1.5 von Apache Flink waren von der Art, etwas unscheinbare, nicht sehr beliebte, aber dringend benötigte Verbesserungen einzuführen. Es ging um Produktionsbereitstellungs- und Stabilitätsoptionen, und sie bedeuteten, dass einige Abwärtskompatibilitäten unterbrochen werden mussten. Aus diesem Grund haben wir gehört, dass viele Benutzer immer noch mit 1 rollen.3, obwohl Verbesserungen in 1.6, hauptsächlich in Streaming SQL, einige dazu verleiteten, den Sprung zu wagen und ein Upgrade durchzuführen.

Auch: Die Top 10 Big Data Frameworks, die in der Enterprise TechRepublic verwendet werden

Jetzt ist diese harte, unglamouröse Arbeit größtenteils vorbei. Ein wichtiger Teil, den Data Artisans angehen möchte, ist die Containerisierung von Flink oder die Möglichkeit, es als Bibliothek mit Docker und Kubernetes im sogenannten reaktiven Modus zu verwenden.

Weitere Tagesordnungspunkte für die nahe Zukunft sind die automatische Skalierung, zeitversionierte Tabellenverknüpfungen (eine dringend benötigte Funktion in einer Welt, in der Daten ständig aktualisiert werden) und SQL für die Musteranalyse. SQL wurde zu diesem Zweck mit der MATCH_RECOGNIZE-Funktion erweitert, und Data Artisans möchte dies auf Flink übertragen.

Eine weitere interessante Richtung eröffnet sich Python über Apache Beam. Obwohl Beam und Flink konzeptionell ziemlich nahe beieinander liegen, wie Data Artisans CTO Stephan Ewen feststellte, hatte Flink bisher keine greifbaren Vorteile durch die Ausrichtung auf Beam. Aber die Unterstützung für Python ändert das.

Beam führt ein Framework ein, über das APIs in anderen Sprachen als Java unterstützt werden können, und Python ist das erste. Laut den Apache Beam-Leuten kommt dies ohne unerträgliche Kompromisse bei der Ausführungsgeschwindigkeit im Vergleich zu Java – etwa 10 Prozent in den Szenarien, die sie testen konnten.Dies bedeutet, dass Flink jetzt auch in Python über Beam programmiert werden kann, was angesichts der Verbreitung von Python für Data Science- und Machine Learning-Szenarien ziemlich wichtig ist. Ewen räumte dies ein und stellte jedoch fest, dass es nicht darum geht, Java in absehbarer Zeit aufzugeben.

Außerdem: Hortonworks stellt Roadmap vor, um Hadoop cloud-native zu machen

Databricks / Spark Auf der anderen Seite unterstützt Python seit einiger Zeit, was erklären könnte, was wir als breite Differenzierung zwischen den beiden Plattformen wahrnehmen: Flink wird eher als Stateful Engine für die schnelle Verarbeitung verwendet, wobei ACID seine Position als Integrations-Hub für das Echtzeit-Unternehmen stärkt, während Spark eher als Data Science- Analytics-Backbone verwendet wird, wobei Python- und Notebook-Integration zu seiner Popularität beitragen.

Natürlich gibt es Überschneidungen, und die Dinge sind nicht so klar. In jedem Fall ist es erwähnenswert, dass die Data Artisans ACID-Unterstützung patentiert ist und Teil der Data Artisans-Plattform ist, was bedeutet, dass Databricks sie im Gegensatz zu Stateful Streaming nicht so einfach auf seiner eigenen Plattform einführen kann. Unabhängig davon haben Databricks und Spark Fortschritte auf ihrem eigenen Weg gemacht, und wir werden bald mehr darüber berichten.

Vorherige und verwandte Berichterstattung:

Cisco faltet Spark in Webex als Webex Teams

Webex Teams nutzt alle Funktionen für die Zusammenarbeit in Cisco Spark und bietet sie neben Funktionen an, die auf der Webex-Konferenzplattform basieren.

Dieses Startup glaubt zu wissen, wie man Echtzeitanalysen für Tonnen von Daten beschleunigt

Die von Unternehmen gesammelten riesigen Datenmengen zu verstehen, ist ein Problem für Unternehmen, von dem Iguazio sagt, dass es geknackt wird.

Apache Flink: Braucht die Welt eine andere Streaming-Engine?

Apache Flink hat zwar noch keine kritische Masse an kommerzieller Unterstützung erhalten, verspricht jedoch, eine Lücke zu schließen, die von anderen Open-Source-Streaming-Engines nicht geschlossen wurde: Hinzufügen von Replay und Rollback zu Ihrer Streaming-Anwendung.

Going with the stream: Unbounded data processing with Apache Flink

Streaming ist heiß in Big Data, und Apache Flink ist eine der Schlüsseltechnologien in diesem Bereich. Was macht es anders, welche neuen Funktionen sind in seiner neuesten Version enthalten und welche Rolle spielt es bei der Eroberung der Big Data-Welt?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.