我是Spark的新手。我尝试在1个工作节点上运行一个简单的Amazon EMR应用程序(Python pi近似值为here),第二阶段使用2个工作节点(m4.large)运行。每次完成任务耗费的时间大约为25秒。天真地说,我期待有两个节点的1.5倍增益。我天真吗?这是正常的吗?Spark执行时间与AWS EMR上的节点数
1
A
回答
1
让我们做一个简单的实验:
from functools import reduce
from operator import add
import timeit
# Taken from the linked example.
n = 100000
def f(_):
x = random() * 2 - 1
y = random() * 2 - 1
return 1 if x ** 2 + y ** 2 < 1 else 0
%timeit -n 100 reduce(add, (f(x) for x in range(n)))
结果我得到使用很老的硬件:
100 loops, best of 3: 132 ms per loop
这应该是一个预计处理时间为一个分区和价值,我们得到的是相当的到任务调度时间。
结论?您测量的是集群和应用程序延迟(上下文初始化,调度延迟,上下文拆除)而非处理时间。
1
这个问题是相当广泛的,因此我的答案将会很宽泛,但你会得到的图片。
更多的机器并不意味着总是更快的计算并且特别不在Pi逼近上。
您不应该忘记最终的瓶颈:网络I/O,数据偏斜,昂贵的转换,分区等等。
这就是为什么应该进行基准测试和监测。你也可以计算Spark上下文需要设置和拆卸的时间,这可能是你计算时间的一个重要部分。
再加上一个m4.large是一个相当强大的机器用于此目的。如果您在EMR群集上设置神经节,您会注意到,spark几乎不会使用其资源,这会导致您在启动EMR上的Spark应用程序时考虑进行调整。
现在回答你的问题。 是的,该行为对于您正在启动的应用程序是正常的。
这是我前段时间写的关于 improving latency on a single node apache spark cluster的文章,可能会为您提供有关此主题的更多信息。
相关问题
- 1. 在AWS EMR上运行Spark,如何在主节点上运行驱动程序?
- 2. AWS EMR Spark 1.0
- 3. Spark AWS emr检查点位置
- 4. AWS EMR上的Spark 2.1.0的AWS-SDK对齐错误?
- 5. 仅具有主节点和任务节点的AWS EMR
- 6. 通过传递证书在AWS EMR上运行spark
- 7. Spark工作执行时间
- 8. 如何执行AWS emr和redshift脚本?
- 9. AWS EMR Spark Python日志记录
- 10. 在长时间运行的EMR集群上设置AWS数据管道
- 11. Spark/Hadoop无法在AWS EMR上找到文件
- 12. 处理AWS EMR集群中任务节点的现场终止
- 13. 如何使用EMR使从属节点适用于Spark群集?
- 14. 自动缩放AWS EMR集群节点0
- 15. AWS节点JS与请求
- 16. AWS EMR Auto Scaling
- 17. 节点js,函数执行
- 18. 节点可执行不能在与节点的调试器PKG
- 19. 来自AWS EMR的跨区域S3访问Spark
- 20. AWS EMR上的自定义log4j.properties
- 21. AWS Data Pipeline - 在创建EMR期间设置Hive站点值
- 22. 索引节点和度量Neo4j中的查询执行时间
- 23. AWS EMR jupyter密码
- 24. 在EMR 4.0中启动Spark时出错
- 25. 调试在EMR上运行的Spark应用程序
- 26. 连接超时EMR上的spark-redshift异常
- 27. 主节点在Spark中执行实际任务吗?
- 28. 如何在AWS EMR上启用SSO登录到Apache Zeppelin EMR
- 29. 如何解决AWS EMR Spark和Zeppelin版本不匹配问题?
- 30. AWS EMR - IntelliJ远程调试Spark应用程序
谢谢埃利亚斯。我明白数据的局部性,数据格式和任务的复杂性是需要考虑的重要问题,但我认为针对这些问题(例如:网络I/O在哪里),pi逼近的具体问题并不是非常困难。您如何知道Spark花费在设置和拆卸上的时间?神经节显示这种信息吗? – Patrick
我已经提到了网络瓶颈问题,但它不应该是你的情况,我相信你需要知道它。你可以测量连接到ssh的设置和连接,编写一个简单的应用程序来实现这一点,你可能会有一个关于它需要多少的经验概念。那里没有魔法。 – eliasah