Actually destroy all data and metadata related to this broadcast variable.
Actually destroy all data and metadata related to this broadcast variable. Implementation of Broadcast class must define their own logic to destroy their own state.
Actually unpersist the broadcasted value on the executors.
Actually unpersist the broadcasted value on the executors. Concrete implementations of Broadcast class must define their own logic to unpersist their own data.
Actually get the broadcasted value.
Actually get the broadcasted value. Concrete implementations of Broadcast class must define their own way to get the value.
Check if this broadcast is valid.
Check if this broadcast is valid. If not valid, exception is thrown.
A unique identifier for the broadcast variable.
Delete cached copies of this broadcast on the executors.
Delete cached copies of this broadcast on the executors. If the broadcast is used after this is called, it will need to be re-sent to each executor.
Whether to block until unpersisting has completed
Asynchronously delete cached copies of this broadcast on the executors.
Asynchronously delete cached copies of this broadcast on the executors. If the broadcast is used after this is called, it will need to be re-sent to each executor.
Get the broadcasted value.
A broadcast variable. Broadcast variables allow the programmer to keep a read-only variable cached on each machine rather than shipping a copy of it with tasks. They can be used, for example, to give every node a copy of a large input dataset in an efficient manner. Spark also attempts to distribute broadcast variables using efficient broadcast algorithms to reduce communication cost.
Broadcast variables are created from a variable
v
by calling org.apache.spark.SparkContext#broadcast. The broadcast variable is a wrapper aroundv
, and its value can be accessed by calling thevalue
method. The interpreter session below shows this:After the broadcast variable is created, it should be used instead of the value
v
in any functions run on the cluster so thatv
is not shipped to the nodes more than once. In addition, the objectv
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).Type of the data contained in the broadcast variable.