我确信我们可以广播变量的值,但我不知道如何在执行器中广播在驱动程序中创建的对象。我在Scala程序中为第三方Java类创建了一个对象。我想将所有类的实例共享给所有执行程序,而不是创建多个对象。
我发现广播方法可用于广播变量的值。但我不知道是否可以用于广播对象。请发表您的建议
答案 0 :(得分:0)
通过广播,您也可以广播对象。请参阅API for broadcast
broadcast[T](value: T)(implicit arg0: ClassTag[T]): Broadcast[T]
Broadcast a read-only variable to the cluster, returning a org.apache.spark.broadcast.Broadcast object for reading it in distributed functions.
广播变量应该是只读的,所以你应该担心它是同一个实例或不同的实例。