Packages

c

org.apache.spark

ShuffleDependency

class ShuffleDependency[K, V, C] extends Dependency[Product2[K, V]] with Logging

Developer API

Represents a dependency on the output of a shuffle stage. Note that in the case of shuffle, the RDD is transient since we don't need it on the executor side.

Annotations
@DeveloperApi()
Source
Dependency.scala
Linear Supertypes
Logging, Dependency[Product2[K, V]], Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ShuffleDependency
  2. Logging
  3. Dependency
  4. Serializable
  5. Serializable
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ShuffleDependency(_rdd: RDD[_ <: Product2[K, V]], partitioner: Partitioner, serializer: Serializer = SparkEnv.get.serializer, keyOrdering: Option[Ordering[K]] = None, aggregator: Option[Aggregator[K, V, C]] = None, mapSideCombine: Boolean = false, shuffleWriterProcessor: ShuffleWriteProcessor = new ShuffleWriteProcessor)(implicit arg0: ClassTag[K], arg1: ClassTag[V], arg2: ClassTag[C])

    _rdd

    the parent RDD

    partitioner

    partitioner used to partition the shuffle output

    serializer

    Serializer to use. If not set explicitly then the default serializer, as specified by spark.serializer config option, will be used.

    keyOrdering

    key ordering for RDD's shuffles

    aggregator

    map/reduce-side aggregator for RDD's shuffle

    mapSideCombine

    whether to perform partial aggregation (also known as map-side combine)

    shuffleWriterProcessor

    the processor to control the write behavior in ShuffleMapTask

Value Members

  1. val aggregator: Option[Aggregator[K, V, C]]
  2. def getMergerLocs: Seq[BlockManagerId]
  3. val keyOrdering: Option[Ordering[K]]
  4. val mapSideCombine: Boolean
  5. def newShuffleMergeState(): Unit
  6. val partitioner: Partitioner
  7. def rdd: RDD[Product2[K, V]]
    Definition Classes
    ShuffleDependencyDependency
  8. val serializer: Serializer
  9. def setMergerLocs(mergerLocs: Seq[BlockManagerId]): Unit
  10. val shuffleHandle: ShuffleHandle
  11. val shuffleId: Int
  12. def shuffleMergeAllowed: Boolean
  13. def shuffleMergeEnabled: Boolean
  14. def shuffleMergeFinalized: Boolean

    Returns true if push-based shuffle is disabled or if the shuffle merge for this shuffle is finalized.

  15. def shuffleMergeId: Int
  16. val shuffleWriterProcessor: ShuffleWriteProcessor