考虑到Spark任务的数量不能高于核心数,运行更多分区而不是核心数是否合理?如果是这样,你能详细说明吗?
答案 0 :(得分:1)
可能还有其他情况需要增加分区数量(例如,如果达到大小/内存限制)。
查看这篇关于并行性调优的好文章:http://blog.cloudera.com/blog/2015/03/how-to-tune-your-apache-spark-jobs-part-2/
<强>更新强> 这有助于处理/数据偏差,并为您提供更好的集群利用率和更快的作业执行(下面是Spark UI的示例截图,您可以在其中看到任务之间的偏差 - 请参阅diff Median vs Max任务持续时间):
假设你有一个可以并行运行2个任务的集群。