gpt4 book ai didi

apache-spark - 如何检查我的 RDD 或数据帧是否被缓存?

转载 作者:行者123 更新时间:2023-12-03 07:24:44 25 4
gpt4 key购买 nike

我创建了一个名为 df1 的数据框。我使用 df1.cache() 缓存了它。如何检查它是否已被缓存?还有一种方法可以让我看到所有缓存的 RDD 或数据帧。

最佳答案

您可以在 Dataframe 和 RDD 上调用 getStorageLevel.useMemory 来查明数据集是否在内存中。

对于数据框,执行以下操作:

scala> val df = Seq(1, 2).toDF()
df: org.apache.spark.sql.DataFrame = [value: int]

scala> df.storageLevel.useMemory
res1: Boolean = false

scala> df.cache()
res0: df.type = [value: int]

scala> df.storageLevel.useMemory
res1: Boolean = true

对于 RDD 执行以下操作:

scala> val rdd = sc.parallelize(Seq(1,2))
rdd: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[1] at parallelize at <console>:21

scala> rdd.getStorageLevel.useMemory
res9: Boolean = false

scala> rdd.cache()
res10: rdd.type = ParallelCollectionRDD[1] at parallelize at <console>:21

scala> rdd.getStorageLevel.useMemory
res11: Boolean = true

关于apache-spark - 如何检查我的 RDD 或数据帧是否被缓存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32433439/

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