Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Akka Stream vs Spark Stream [closed]

What are advantage/disadvantage of using akka stream vs spark stream for stream processing? like, built in back pressure, performance, fault tolerance, built in transformation, flexibility etc. I'm NOT asking akka vs spark pros/cons strictly streaming component. Also I'm NOT asking under the hood framework architecture difference.

like image 951
Hiren Avatar asked Jul 06 '16 16:07

Hiren


1 Answers

Akka Streams and Spark streams are from 2 different lands. Do not let the word "streams" confuse you.

Akka streams implement something called reactive manifesto which is great to achieve really low latency and provide a lot of operators to write declaratively transformations over streams easily. More about this on https://doc.akka.io/docs/akka/2.5.4/scala/stream/stream-introduction.html#motivation.

Spark Streaming aka Structured Streaming as of 2.2 is still a micro-batch approach to process a huge amount of data(Big Data).Events are collected and then processed periodically in small batches every few seconds.

Akka streams is basically not a distributed and do not scale out across clusters, unlike Spark.Akka streams use actor model of Akka to achieve Concurrency.

Akka streams is a toolkit and Spark is a framework. PS: Even I had the same question couple of months back. Took a while to get my answers. Hope its helpful.

like image 100
Achilleus Avatar answered Oct 04 '22 03:10

Achilleus