Was sind die Unterschiede zwischen Hazelcast Jet und Apache Flink?

9

Genauer gesagt, welche Anwendungsfälle löst Hazelcast Jet, die Flink nicht (gleich gut) löst und umgekehrt?

    
Atle 15.02.2017, 07:43
quelle

2 Antworten

11

HINWEIS: Ich gehöre zum Kernteam von Hazelcast Jet.

Ich würde sagen, der Hauptvorteil von Hazelcast Jet besteht nicht darin, ein brandneues Computing-Modell anzubieten, sondern darin, Hazelcast das gleiche Maß an Bequemlichkeit zu bieten, das für DAG-basiertes verteiltes Computing bekannt ist.

Wenn Sie derzeit eine Java-Anwendung in einem Cluster ausführen, ist das Hinzufügen von Jet ein Kinderspiel: Fügen Sie die Maven-Abhängigkeit hinzu und schreiben Sie eine Codezeile, um eine Jet-Instanz auf dem lokalen Element zu starten. Die Instanzen werden sich selbst entdecken, um einen eigenen Cluster zu bilden, und Sie können nun Ihren Job an ihn senden.

Wenn Sie ein dediziertes verteiltes Computing-Cluster möchten, machen Sie ein triviales Projekt mit Jet als einzelne Abhängigkeit und führen es im Cluster aus, und verbinden es dann von außen mit einer einzelnen Codezeile. p>

Es ist unnötig zu sagen, dass es Jet sehr praktisch macht, eine Hazelcast IMap oder IList als Datenquelle zu verwenden. Jet-Cluster kann Hazelcast-Strukturen direkt aufnehmen; Dann profitieren Sie von der Datenlokalität und erhalten die Daten ohne Netzwerkverkehr. Auf der anderen Seite ist die Wahl der Datenquelle völlig unbeschränkt und es gibt eine öffentliche API, die für die Implementierung schneller, beliebig partitionierter benutzerdefinierter Datenquellen vorgesehen ist.

In Version 0.3 bietet Ihnen Jet ein flexibles und leistungsfähiges DAG-Modell, mit dem Sie die performance-kritischen Aspekte der Berechnung präzise steuern können, und eine High-Level-Convenience-Schicht in Form der vertrauten java.util.stream API Besonderheiten des verteilten Computing (Lambda-Serialisierung und andere Anliegen).

Auf der Roadmap zum Meilenstein 1.0 steht eine erstklassige Unterstützung für die Bedenken bei der Verarbeitung von unendlichen Datenströmen, wie Zeitfenstern, konsistenten Snapshots und Ausfallsicherheit gegenüber Änderungen in der Cluster-Topologie.

    
Marko Topolnik 16.02.2017 08:57
quelle
2

meiner Meinung nach bietet flink einige sehr nützliche Streaming-Funktionen, die hatecast jet noch nicht anbietet.

  • Verschiedene flexible Fensteroperatoren, die auch Out-of-Order- und Late-Items verarbeiten können.
  • Fehlertoleranz auf dem Cluster und Liefergarantien

Daneben scheint es im Moment auch stabiler und bekannter zu sein. Beispielsweise können Sie es als Laufzeitumgebung für Apache Beam verwenden und dann problemlos zwischen Google Datenfluss in der Cloud und Ihrer eigenen Bereitstellung migrieren. Also würde ich momentan flink benutzen.

Beste

    
Philipp Grulich 16.02.2017 21:04
quelle

Tags und Links