Spark 任务瓶颈分析

发布于 2022-09-12 03:08:16 字数 1077 浏览 41 评论 0

我先说说我的机器,一台 master,性能肯定够。一台 slave 节点(配置为 6 核 10g内存 单块硬盘)

master 节点只负责管理,不参与任何运算。然后发现了一个很奇怪的现象,在 Logistic Regression 中有一个 stage,随着 executor core 的核数增加,每一个 task 的平均运行时间增长,请问这是怎么回事。(这里只讨论每一个 task 的运行时间长短,而不是整个 stage 的)

每一个 executor 的配置为 1core 1g 内存。数据的文件大小都是一样的,而且有 7G,所以肯定不会存在文件太小并行度太低的问题。

该 Stage 的 DAG 图

image.png

1 core 1 g
image.png

2 core 2 g
image.png

3 core 3g

image.png

4 core 4g
image.png

5 core 5g
image.png

如上面的图,随着 executor 的增加,每个 task 的平均运行时间逐渐增加,我猜测是磁盘的 IO 引起,那么我该如何判断某个 stage 的瓶颈是不是由 IO 引起的呢,因为前面几个 stage 中,每个 task 的运行时间长短不会随着 executor 的增加而变慢。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文