Closed. This question is opinion-based。它当前不接受答案。












想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。

去年关闭。



Improve this question




您能否告诉我Apache Spark和AKKA之间的区别,我知道这两个框架都旨在对分布式和并行计算进行编程,但是我看不到它们之间的联系或区别。

此外,我想获得适合每个使用案例的用例。

最佳答案

Apache Spark实际上是基于Akka构建的。

Akka是一个通用框架,用于在Scala或Java中创建反应式,分布式,并行和 flex 并发应用程序。 Akka使用Actor模型来隐藏所有与线程相关的代码,并为您提供真正简单而有用的界面,以轻松实现可伸缩且容错的系统。 Akka的一个很好的例子是实时应用程序,该应用程序使用和处理来自手机的数据并将其发送到某种存储设备。

Apache Spark(不是Spark Streaming)是使用map-reduce算法的通用版本处理批处理数据的框架。 Apache Spark的一个很好的例子是对存储数据的一些指标进行计算,以更好地了解您的数据。数据将按需加载和处理。

如果已存储数据,Apache Spark Streaming能够以接近实时的小批量数据执行类似的操作和功能。

更新2016年4月

从Apache Spark 1.6.0起,Apache Spark不再依赖Akka进行节点之间的通信。感谢@EugeneMi的评论。

10-07 19:31
查看更多