如何识别可用的RDD列表?

时间:2017-05-01 20:28:13

标签: apache-spark rdd

我使用以下命令获取可用的已注册Temp表的列表 sqlContext.sql("show tables").collect().foreach(println)

是否有类似的命令来获取可用的RDD列表?

这是我的要求(使用scala)     1.需要动态创建一些RDD     2.确定可用RDD列表     3.删除/删除/清除不需要的RDD并继续前进

How to delete an RDD in PySpark for the purpose of releasing resources?

另外一个注意事项,我通过这个链接,但它没有回答我的所有问题...我也尝试了下面但是在unpersist之前和之后没有发现任何差异,所以不知道如何确认我的RDD已经释放了内存

val tempRDD1 = RDD1.reduceByKey((acc,value)=> acc+value)
tempRDD1.collect.foreach(println)
tempRDD1.unpersist()
tempRDD1.collect.foreach(println)

1 个答案:

答案 0 :(得分:0)

RDD数据在保持(缓存)和2之前不会保存.2。会发生一个操作以强制执行上述转换。如果不发生其中任何一个,则不会存储任何数据。任何看似"创建"的RDD,只会创建一个行动计划,以便在以后需要时生成数据。这个模型叫做懒惰评估。

在您的示例中,没有缓存任何RDD,因此不会将任何数据存储在内存中。 unpersist电话无效。