火花结构化流驱动器中的内存泄漏

发布于 2025-01-24 20:30:57 字数 567 浏览 3 评论 0原文

我正在使用Hadoop 3.2.0使用Spark 3.1.2来运行Spark结构化流( sss )聚合作业,在Spark K8上运行。

这些作业是使用提供的SSS读取文件源输入的SSS的文件,还使用S3进行检查点(使用目录输出主机)。

我注意到的是,经过几天的运行,驾驶员正在出现内存问题并崩溃。

由于驱动程序没有做很多事情(只需调用Spark SQL功能并将输出写入S3),我想知道如何检测这些内存问题的来源(内存从Hadoop/S3A库泄漏?),我如何可以修复它们。

如屏幕截图上所示,驱动程序需要花费一些时间使用所有内存,一旦到达它,它似乎就能将GC调用足够的时间。但是经过一周的运行后,它崩溃了,好像GC运行不够/找不到可以清洁的东西。

I am using Spark 3.1.2 with hadoop 3.2.0 to run Spark Structured Streaming (SSS) aggregation job, running on Spark K8S.

Theses job are reading files from S3 using SSS provided File Source input and also use S3 for checkpointing (with the directory output commiter).

What I noticed is that, after few days of running, the driver is having memory issue and crash.

As the driver is not doing many things (just calling Spark SQL functions and write the output to S3), I am wondering how to detect the source of these memory issues (memory leaking from hadoop/S3A library ?) and how I can fix them.

Memory usage of Spark Driver

As shown on the screenshot, the driver take some time befoe using all the memory, and once it reached it, it seems to be able to call GC enough time. But after 1 week of running, it crash, as if the GC doesn't run enough/doesn't find something to clean.

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

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

发布评论

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