gpt4 book ai didi

java - RDD 的垃圾收集

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:09:02 26 4
gpt4 key购买 nike

我有一个关于 spark 的基本问题。 Spark 维护 RDD 的沿袭以在少数 RDD 损坏的情况下重新计算。所以 JVM 无法将其作为孤立对象找到。那么 RDD 的垃圾回收是如何以及何时发生的?

最佳答案

可以使用配置RDD存储的内存

"spark.storage.memoryFracion" property.

如果超过这个限制,旧的分区将从内存中删除。

我们可以将它设置为 0 到 1 之间的值,描述执行程序 JVM 内存的哪一部分将专门用于缓存 RDD。默认值为 0.66

假设我们有 2 GB 内存,那么默认情况下我们将获得 0.4 * 2g 内存用于您的堆,0.66 * 2g 用于 RDD 存储。

我们可以配置 Spark 属性来打印有关 GC 行为的更多详细信息:

spark.executor.extraJavaOptions 设置为包含

“-verbose:gc -XX:-PrintGCDetails -XX:+PrintGCTimeStamps”

如果您的任务变慢并且您发现您的 JVM 频繁收集垃圾或内存不足,降低“spark.storage.memoryFracion”值将有助于减少内存消耗。

更多详细信息,请查看以下引用资料:

http://spark.apache.org/docs/1.2.1/tuning.html#garbage-collection-tuning

关于java - RDD 的垃圾收集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29057461/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com