Spark Broadcast变量的生存时间

时间:2019-02-17 07:58:46

标签: apache-spark spark-streaming

我正在运行一个火花流作业,作为其中的一部分,我正在创建多个广播变量。

因此,我对此有两个疑问。 1.是否有任何函数可以给出所有广播变量的列表,例如spark.getPersistentRDDs,该列表列出了所有持久的RDD。 2.如果我们不销毁Spark广播变量,则在一段时间内未使用它们时,Spark会删除它们。

1 个答案:

答案 0 :(得分:0)

  1. Spark不提供列出所有广播变量(例如getPersistentRDDs)的功能,但是一种替代解决方案是,每当创建广播变量时​​,将其存储在列表/队列中以备将来参考。
  2. Spark具有ContextCleaner,它会定期运行以删除广播变量(如果未使用的话)。
    https://github.com/apache/spark/blob/master/core/src/main/scala/org/apache/spark/ContextCleaner.scala#L233