【问题标题】:trace expensive part of code in spark ui back to part of pyspark将 spark ui 中昂贵的代码部分追溯到 pyspark 的一部分
【发布时间】:2021-06-15 13:38:15
【问题描述】:

我有一些包含大量连接和聚合的 pyspark 代码。我已经启用了 spark ui,并且一直在深入研究事件计时、工作阶段和 dag 可视化。我可以找到昂贵部件的任务 ID 和执行者 ID。有没有人知道如何将 spark ui 输出(任务 id、执行程序 id)中昂贵的部分与我的 pyspark 代码的一部分联系起来?就像我从输出中可以看出,昂贵的部分是由我所有连接的大量随机操作引起的,但确定哪个连接是罪魁祸首真的很方便。

【问题讨论】:

    标签: pyspark apache-spark-sql spark-ui


    【解决方案1】:

    您最好的方法是开始在代码的各个部分对数据框应用操作。选择一个地方,将其写入文件,读回,然后继续。 这将使您能够识别瓶颈。您也可以在 UI 中观察到一小部分执行。

    【讨论】:

    • 感谢您的提示。你知道我会在事件时间线、已完成的阶段或 DAG 可视化中看到什么,这会提示我这是“写入”步骤吗?如果我添加多个,有没有办法在 spark ui 中区分它们?
    猜你喜欢
    • 2016-07-20
    • 2018-08-07
    • 2013-05-22
    • 1970-01-01
    • 1970-01-01
    • 2022-06-14
    • 1970-01-01
    • 2018-03-08
    • 2015-03-22
    相关资源
    最近更新 更多