scala – Spark列出所有缓存的RDD名称
发布时间:2020-12-16 09:02:55 所属栏目:安全 来源:网络整理
导读:我是Apache Spark的新手,我创建了几个RDD和DataFrames,缓存它们,现在我想通过使用下面的命令来解决它们中的一些问题 rddName.unpersist() 但我不记得他们的名字.我使用了sc.getPersistentRDDs,但输出中没有包含名称.我还使用浏览器查看缓存的rdds但是再次没
我是Apache Spark的新手,我创建了几个RDD和DataFrames,缓存它们,现在我想通过使用下面的命令来解决它们中的一些问题
rddName.unpersist() 但我不记得他们的名字.我使用了sc.getPersistentRDDs,但输出中没有包含名称.我还使用浏览器查看缓存的rdds但是再次没有名称信息.我错过了什么吗? 解决方法
@Dikei的答案实际上是正确的,但我相信你要找的是sc.getPersistentRDDs:
scala> val rdd1 = sc.makeRDD(1 to 100) # rdd1: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[0] at makeRDD at <console>:27 scala> val rdd2 = sc.makeRDD(10 to 1000) # rdd2: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[1] at makeRDD at <console>:27 scala> rdd2.cache.setName("rdd_2") # res0: rdd2.type = rdd_2 ParallelCollectionRDD[1] at makeRDD at <console>:27 scala> sc.getPersistentRDDs # res1: scala.collection.Map[Int,org.apache.spark.rdd.RDD[_]] = Map(1 -> rdd_2 ParallelCollectionRDD[1] at makeRDD at <console>:27) scala> rdd1.cache.setName("foo") # res2: rdd1.type = foo ParallelCollectionRDD[0] at makeRDD at <console>:27 scala> sc.getPersistentRDDs # res3: scala.collection.Map[Int,org.apache.spark.rdd.RDD[_]] = Map(1 -> rdd_2 ParallelCollectionRDD[1] at makeRDD at <console>:27,0 -> foo ParallelCollectionRDD[0] at makeRDD at <console>:27) 现在让我们添加另一个RDD并命名它: scala> rdd3.setName("bar") # res4: rdd3.type = bar ParallelCollectionRDD[2] at makeRDD at <console>:27 scala> sc.getPersistentRDDs # res5: scala.collection.Map[Int,0 -> foo ParallelCollectionRDD[0] at makeRDD at <console>:27) 我们注意到它实际上并没有持久化. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |