【发布时间】:2018-10-26 05:17:57
【问题描述】:
我们最近开始缓存重复使用多次的 RDD,即使这些 RDD 不需要很长时间来计算。
根据文档,Spark 将使用 LRU 策略自动驱逐未使用的缓存数据。
那么过度缓存 RDD 有什么缺点吗?我在想,也许在内存中拥有所有反序列化的数据会给 GC 带来更大的压力,但这是我们应该担心的事情吗?
【问题讨论】:
标签: apache-spark pyspark rdd
我们最近开始缓存重复使用多次的 RDD,即使这些 RDD 不需要很长时间来计算。
根据文档,Spark 将使用 LRU 策略自动驱逐未使用的缓存数据。
那么过度缓存 RDD 有什么缺点吗?我在想,也许在内存中拥有所有反序列化的数据会给 GC 带来更大的压力,但这是我们应该担心的事情吗?
【问题讨论】:
标签: apache-spark pyspark rdd
缓存大量 RDD 的主要缺点是(显然)它使用内存。如果缓存的大小是有限的,LRU 策略并不一定意味着最不有价值的项目被驱逐。如果您在不考虑其价值的情况下缓存所有内容,您可能会发现当您不希望它们被驱逐时,计算成本更高但不经常访问的项目被驱逐。
【讨论】: