Apache spark 如果数据可以';Spark中的cache()不适合内存?

Apache spark 如果数据可以';Spark中的cache()不适合内存?,apache-spark,cluster-computing,distributed-computing,Apache Spark,Cluster Computing,Distributed Computing,我是新手。我在多个地方读到,在RDD上使用cache()会导致它存储在内存中,但到目前为止,我还没有找到关于“如何确定数据的最大大小”的明确指导原则或经验法则,可以将其塞进内存?如果调用“缓存”的数据量超过内存,会发生什么情况?它会导致我的工作失败,还是仍然会对集群性能产生显著影响 谢谢 如中所述,仅使用内存持久性(相当于缓存): 如果RDD不适合内存,则某些分区将不会被缓存,并且会在每次需要时动态重新计算 即使数据放入内存,如果新数据进入,也可以将其逐出。实际上,缓存与其说是契约,不如说是一种

我是新手。我在多个地方读到,在RDD上使用cache()会导致它存储在内存中,但到目前为止,我还没有找到关于“如何确定数据的最大大小”的明确指导原则或经验法则,可以将其塞进内存?如果调用“缓存”的数据量超过内存,会发生什么情况?它会导致我的工作失败,还是仍然会对集群性能产生显著影响


谢谢

如中所述,仅使用
内存
持久性(相当于
缓存
):

如果RDD不适合内存,则某些分区将不会被缓存,并且会在每次需要时动态重新计算

即使数据放入内存,如果新数据进入,也可以将其逐出。实际上,缓存与其说是契约,不如说是一种暗示。您不能依赖于缓存的发生,但如果缓存成功,您也不必依赖缓存

注意

请记住,
数据集
的默认存储级别为
内存和磁盘
,它将:

如果RDD不适合内存,请将不适合的分区存储在磁盘上,并在需要时从那里读取

另见