【问题标题】:What is the proper syntax of using broadcast variables in Spark using Scala?使用 Scala 在 Spark 中使用广播变量的正确语法是什么?
【发布时间】:2026-02-06 16:10:02
【问题描述】:

我想在带有 Scala 的 Spark 中使用广播变量。但我无法找到有关如何使用它们的足够帮助。比如说,我有一个 A 类的对象,我通常会在 Scala 中声明如下。

val a = new A()

将其声明为广播变量的语法是什么。我该如何调用它的方法?

【问题讨论】:

    标签: scala apache-spark broadcast


    【解决方案1】:

    如果scSparkContext,那么val broadcasted = sc.broadcast(a) 将广播a.
    然后您可以使用broadcasted.value 访问它。

    【讨论】:

      【解决方案2】:

      马是对的。您还需要使用 sc.destroy(blocking) 来销毁广播变量,其中阻塞是一个标志。我想强调一下,建议避免广播小变量。

      【讨论】:

      • 为什么建议避免广播小变量?