py Spark 的内存分析

cla*_*ius 5 python out-of-memory memory-profiling apache-spark pyspark

我一直在阅读有关如何分析我的火花簇的信息。注意:我正在使用 pyspark。

我已经能够集成 cProfiler 以获取驱动程序级别和每个 RDD 级别的时间指标。但 cProfile 只能帮助节省时间。

如何分析我的 Spark 应用程序(使用 py-spark 编写)的内存使用情况?

我有兴趣找到内存和时间瓶颈,以便我可以重新访问/重构该代码。

另外,有时当我将更改推送到生产时,会导致 OOM(在执行器处),并且我最终会被动地修复代码。我认为将它与一些内存分析器集成将帮助我在测试过程中检测到问题。