public abstract class Broadcast<T>
extends java.lang.Object
implements java.io.Serializable
Broadcast variables are created from a variable v by calling
SparkContext.broadcast(T, scala.reflect.ClassTag<T>).
The broadcast variable is a wrapper around v, and its value can be accessed by calling the
value method. The interpreter session below shows this:
scala> val broadcastVar = sc.broadcast(Array(1, 2, 3))
broadcastVar: org.apache.spark.broadcast.Broadcast[Array[Int} = Broadcast(0)
scala> broadcastVar.value
res0: Array[Int] = Array(1, 2, 3)
After the broadcast variable is created, it should be used instead of the value v in any
functions run on the cluster so that v is not shipped to the nodes more than once.
In addition, the object v should not be modified after it is broadcast in order to ensure
that all nodes get the same value of the broadcast variable (e.g. if the variable is shipped
to a new node later).
param: id A unique identifier for the broadcast variable.
| Constructor and Description |
|---|
Broadcast(long id,
scala.reflect.ClassTag<T> evidence$1) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
assertValid()
Check if this broadcast is valid.
|
void |
destroy()
Destroy all data and metadata related to this broadcast variable.
|
protected abstract void |
doDestroy(boolean blocking)
Actually destroy all data and metadata related to this broadcast variable.
|
protected abstract void |
doUnpersist(boolean blocking)
Actually unpersist the broadcasted value on the executors.
|
protected abstract T |
getValue()
Actually get the broadcasted value.
|
long |
id() |
java.lang.String |
toString() |
void |
unpersist()
Asynchronously delete cached copies of this broadcast on the executors.
|
void |
unpersist(boolean blocking)
Delete cached copies of this broadcast on the executors.
|
T |
value()
Get the broadcasted value.
|
public Broadcast(long id,
scala.reflect.ClassTag<T> evidence$1)
public long id()
public T value()
public void unpersist()
public void unpersist(boolean blocking)
blocking - Whether to block until unpersisting has completedpublic void destroy()
protected abstract T getValue()
protected abstract void doUnpersist(boolean blocking)
blocking - (undocumented)protected abstract void doDestroy(boolean blocking)
blocking - (undocumented)protected void assertValid()
public java.lang.String toString()
toString in class java.lang.Object