It seems that Spark is doing what you want, i.e. distribute work on nodes. Dsl is similar to java 8 threads. You can also take a look at the acca streams. With akka streams you cannot do what you want, but it offers you a set of tools that will help you with pleasant dsl.
source share