Время жизни переменных Spark Broadcast - PullRequest
0 голосов
/ 17 февраля 2019

Я выполняю задание потоковой передачи, в рамках которого я создаю несколько широковещательных переменных.

Итак, у меня есть два вопроса по этому поводу.1. Существует ли какая-либо функция, которая может выдавать список всех передаваемых переменных, например spark.getPersistentRDDs, в которой перечисляются все сохраненные СДР.2. Если мы не уничтожим широковещательные переменные Spark, они будут удалены Spark после того, как они не использовались в течение определенного периода времени.

1 Ответ

0 голосов
/ 17 февраля 2019
  1. Spark не предоставляет функцию для перечисления всех широковещательных переменных, таких как getPersistentRDD, но одно альтернативное решение заключается в том, что всякий раз, когда широковещательная переменная создается, сохраняйте ее в списке / очереди для дальнейшего использования.
  2. Spark имеет ContextCleaner, который запускается с периодическим интервалом для удаления широковещательной переменной, если она не используется.
    https://github.com/apache/spark/blob/master/core/src/main/scala/org/apache/spark/ContextCleaner.scala#L233
...