6

parallelstream() ermöglicht eine nahtlose Parallelisierung von Operationen im Stream über die Kerne einer einzelnen Maschine.Streams in Java 8: einfache Lösung für die Verwendung von Parallelstream() auf einem Cluster?

Wie kann ich diese Logik so erweitern, dass parallelstream() diese Operationen an alle Maschinen eines Clusters verteilt?

Ideal:
- Ich erstelle einen Cluster von Maschinen, mit Framework?
- das Starten einer myCollection.parallelstream().filter(something).collect() verteilt den Job auf alle Kerne aller Maschinen des Clusters und gibt das Ergebnis an die Maschine zurück, die den Cluster steuert.

+0

Sie müssten Ihren eigenen 'ForkJoinPool' zur Verfügung stellen, wenn ich mich richtig erinnere – fge

+0

Ich habe kaum angefangen, mich an Java 8 anzupassen und die Leute reden schon über solche Dinge. Ich bin zurückgeblieben;) – CKing

+0

:-) Nun, in dem exzellenten Buch "Java 8 in Action" sagen Autoren immer wieder, dass die Prinzipien der Parallelisierung über mehrere Kerne genauso gut für eine maschinelle Parallelisierung gelten: Ich hoffe also, das liefert! – seinecle

Antwort

0

Spark scheint zu tun, was Sie wollen, dh verteilen Sie die Arbeit über Knoten. Die DSL ähnelt Java-8-Streams. Sie können sich auch akka streams anschauen. Mit akka streams können Sie nicht tun, was Sie wollen aus der Box, aber es bietet Ihnen eine Toolbox, um Sie mit einem schönen dsl zu helfen.

Verwandte Themen