我在通用并行计算方面有一些经验(当然不是专家),现在正在考虑学习Spark。我从pyspark
的一些最基本的示例开始,使用了.parallelize
,.groupBy
,.map
,.collect
等。
我想知道,相比普通的香草并行化,Spark提供了哪些额外的好处,在python中,它类似于pool.map(func, data_iterable)
。
在我看来,仅当算法的数据量很大时,Spark才是更好的选择,例如,当数据大小类似于或大于RAM时,我可以看到拥有像Spark这样的框架来处理过程的好处。但是对于计算量大但数据强度小的代码,使用Spark还能带来其他好处吗?