Packages

c

org.apache.spark.rdd

FilteredCartesianRDD

sealed class FilteredCartesianRDD[T, U, V] extends RDD[(T, U)] with Serializable

Performs a cartesian join of two RDDs using filter and refine pattern.

During RDD declaration n*m partitions will be generated, one for each possible cartesian mapping. During RDD execution summary functions will be applied in a map-side reduce to rrd1 and rdd2. These results will be collected and filtered using metapred for partitions with potential matches. Partition pairings with possible matches will be checked using pred in a refinement step.

No shuffle from rdd1 or rdd2 will be performed by the filter step, but the records of metardds, produced using the summary functions, will be shuffled (as they must be). The metardds contain one item per partition (ex: a "bounding box" of records in parent rdd), so it is assumed that this shuffle will be low cost.

For efficient execution it is assumed that potential matches exist for limited number of cartesian pairings, if no filtering is possible worst case scenario is full cartesian product.

Linear Supertypes
RDD[(T, U)], Logging, Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. FilteredCartesianRDD
  2. RDD
  3. Logging
  4. Serializable
  5. Serializable
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new FilteredCartesianRDD(sc: SparkContext, pred: (T, U) ⇒ Boolean, metapred: (V, V) ⇒ Boolean, rdd1: RDD[T], summaryFn1: (Iterator[T]) ⇒ Iterator[V], rdd2: RDD[U], summaryFn2: (Iterator[U]) ⇒ Iterator[V])(implicit arg0: ClassTag[T], arg1: ClassTag[U], arg2: ClassTag[V])

    sc

    SparkContext

    pred

    refinement predicate

    metapred

    filter predicate

    rdd1

    RDD of elements on the left side of the cartisian join

    rdd2

    RDD of elements on the right side of the cartisian join

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def ++(other: RDD[(T, U)]): RDD[(T, U)]
    Definition Classes
    RDD
  4. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. def aggregate[U](zeroValue: U)(seqOp: (U, (T, U)) ⇒ U, combOp: (U, U) ⇒ U)(implicit arg0: ClassTag[U]): U
    Definition Classes
    RDD
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def barrier(): RDDBarrier[(T, U)]
    Definition Classes
    RDD
    Annotations
    @Experimental() @Since( "2.4.0" )
  8. def cache(): FilteredCartesianRDD.this.type
    Definition Classes
    RDD
  9. def cartesian[U](other: RDD[U])(implicit arg0: ClassTag[U]): RDD[((T, U), U)]
    Definition Classes
    RDD
  10. def checkpoint(): Unit
    Definition Classes
    RDD
  11. def cleanShuffleDependencies(blocking: Boolean): Unit
    Definition Classes
    RDD
    Annotations
    @Experimental() @DeveloperApi() @Since( "3.1.0" )
  12. def clearDependencies(): Unit
    Definition Classes
    FilteredCartesianRDD → RDD
  13. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  14. def coalesce(numPartitions: Int, shuffle: Boolean, partitionCoalescer: Option[PartitionCoalescer])(implicit ord: Ordering[(T, U)]): RDD[(T, U)]
    Definition Classes
    RDD
  15. def collect[U](f: PartialFunction[(T, U), U])(implicit arg0: ClassTag[U]): RDD[U]
    Definition Classes
    RDD
  16. def collect(): Array[(T, U)]
    Definition Classes
    RDD
  17. def compute(split: Partition, context: TaskContext): Iterator[(T, U)]
    Definition Classes
    FilteredCartesianRDD → RDD
  18. def context: SparkContext
    Definition Classes
    RDD
  19. def count(): Long
    Definition Classes
    RDD
  20. def countApprox(timeout: Long, confidence: Double): PartialResult[BoundedDouble]
    Definition Classes
    RDD
  21. def countApproxDistinct(relativeSD: Double): Long
    Definition Classes
    RDD
  22. def countApproxDistinct(p: Int, sp: Int): Long
    Definition Classes
    RDD
  23. def countByValue()(implicit ord: Ordering[(T, U)]): Map[(T, U), Long]
    Definition Classes
    RDD
  24. def countByValueApprox(timeout: Long, confidence: Double)(implicit ord: Ordering[(T, U)]): PartialResult[Map[(T, U), BoundedDouble]]
    Definition Classes
    RDD
  25. final def dependencies: Seq[Dependency[_]]
    Definition Classes
    RDD
  26. def distinct(): RDD[(T, U)]
    Definition Classes
    RDD
  27. def distinct(numPartitions: Int)(implicit ord: Ordering[(T, U)]): RDD[(T, U)]
    Definition Classes
    RDD
  28. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  29. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  30. def filter(f: ((T, U)) ⇒ Boolean): RDD[(T, U)]
    Definition Classes
    RDD
  31. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  32. def first(): (T, U)
    Definition Classes
    RDD
  33. def firstParent[U](implicit arg0: ClassTag[U]): RDD[U]
    Attributes
    protected[spark]
    Definition Classes
    RDD
  34. def flatMap[U](f: ((T, U)) ⇒ TraversableOnce[U])(implicit arg0: ClassTag[U]): RDD[U]
    Definition Classes
    RDD
  35. def fold(zeroValue: (T, U))(op: ((T, U), (T, U)) ⇒ (T, U)): (T, U)
    Definition Classes
    RDD
  36. def foreach(f: ((T, U)) ⇒ Unit): Unit
    Definition Classes
    RDD
  37. def foreachPartition(f: (Iterator[(T, U)]) ⇒ Unit): Unit
    Definition Classes
    RDD
  38. def getCheckpointFile: Option[String]
    Definition Classes
    RDD
  39. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  40. def getDependencies: Seq[Dependency[_]]
    Definition Classes
    FilteredCartesianRDD → RDD
  41. final def getNumPartitions: Int
    Definition Classes
    RDD
    Annotations
    @Since( "1.6.0" )
  42. def getOutputDeterministicLevel: DeterministicLevel.Value
    Attributes
    protected
    Definition Classes
    RDD
    Annotations
    @DeveloperApi()
  43. def getPartitions: Array[Partition]
    Definition Classes
    FilteredCartesianRDD → RDD
  44. def getPreferredLocations(split: Partition): Seq[String]
    Definition Classes
    FilteredCartesianRDD → RDD
  45. def getResourceProfile(): ResourceProfile
    Definition Classes
    RDD
    Annotations
    @Experimental() @Since( "3.1.0" )
  46. def getStorageLevel: StorageLevel
    Definition Classes
    RDD
  47. def glom(): RDD[Array[(T, U)]]
    Definition Classes
    RDD
  48. def groupBy[K](f: ((T, U)) ⇒ K, p: Partitioner)(implicit kt: ClassTag[K], ord: Ordering[K]): RDD[(K, Iterable[(T, U)])]
    Definition Classes
    RDD
  49. def groupBy[K](f: ((T, U)) ⇒ K, numPartitions: Int)(implicit kt: ClassTag[K]): RDD[(K, Iterable[(T, U)])]
    Definition Classes
    RDD
  50. def groupBy[K](f: ((T, U)) ⇒ K)(implicit kt: ClassTag[K]): RDD[(K, Iterable[(T, U)])]
    Definition Classes
    RDD
  51. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  52. val id: Int
    Definition Classes
    RDD
  53. def initializeLogIfNecessary(isInterpreter: Boolean, silent: Boolean): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  54. def initializeLogIfNecessary(isInterpreter: Boolean): Unit
    Attributes
    protected
    Definition Classes
    Logging
  55. def intersection(other: RDD[(T, U)], numPartitions: Int): RDD[(T, U)]
    Definition Classes
    RDD
  56. def intersection(other: RDD[(T, U)], partitioner: Partitioner)(implicit ord: Ordering[(T, U)]): RDD[(T, U)]
    Definition Classes
    RDD
  57. def intersection(other: RDD[(T, U)]): RDD[(T, U)]
    Definition Classes
    RDD
  58. lazy val isBarrier_: Boolean
    Attributes
    protected
    Definition Classes
    RDD
    Annotations
    @transient()
  59. def isCheckpointed: Boolean
    Definition Classes
    RDD
  60. def isEmpty(): Boolean
    Definition Classes
    RDD
  61. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  62. def isTraceEnabled(): Boolean
    Attributes
    protected
    Definition Classes
    Logging
  63. final def iterator(split: Partition, context: TaskContext): Iterator[(T, U)]
    Definition Classes
    RDD
  64. def keyBy[K](f: ((T, U)) ⇒ K): RDD[(K, (T, U))]
    Definition Classes
    RDD
  65. def localCheckpoint(): FilteredCartesianRDD.this.type
    Definition Classes
    RDD
  66. def log: Logger
    Attributes
    protected
    Definition Classes
    Logging
  67. def logDebug(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  68. def logDebug(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  69. def logError(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  70. def logError(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  71. def logInfo(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  72. def logInfo(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  73. def logName: String
    Attributes
    protected
    Definition Classes
    Logging
  74. def logTrace(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  75. def logTrace(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  76. def logWarning(msg: ⇒ String, throwable: Throwable): Unit
    Attributes
    protected
    Definition Classes
    Logging
  77. def logWarning(msg: ⇒ String): Unit
    Attributes
    protected
    Definition Classes
    Logging
  78. def map[U](f: ((T, U)) ⇒ U)(implicit arg0: ClassTag[U]): RDD[U]
    Definition Classes
    RDD
  79. def mapPartitions[U](f: (Iterator[(T, U)]) ⇒ Iterator[U], preservesPartitioning: Boolean)(implicit arg0: ClassTag[U]): RDD[U]
    Definition Classes
    RDD
  80. def mapPartitionsWithIndex[U](f: (Int, Iterator[(T, U)]) ⇒ Iterator[U], preservesPartitioning: Boolean)(implicit arg0: ClassTag[U]): RDD[U]
    Definition Classes
    RDD
  81. def max()(implicit ord: Ordering[(T, U)]): (T, U)
    Definition Classes
    RDD
  82. val metardd1: RDD[V]
  83. val metardd2: RDD[V]
  84. def min()(implicit ord: Ordering[(T, U)]): (T, U)
    Definition Classes
    RDD
  85. var name: String
    Definition Classes
    RDD
  86. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  87. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  88. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  89. val numPartitionsInRdd2: Int
  90. def parent[U](j: Int)(implicit arg0: ClassTag[U]): RDD[U]
    Attributes
    protected[spark]
    Definition Classes
    RDD
  91. val partitioner: Option[Partitioner]
    Definition Classes
    RDD
  92. final def partitions: Array[Partition]
    Definition Classes
    RDD
  93. def persist(): FilteredCartesianRDD.this.type
    Definition Classes
    RDD
  94. def persist(newLevel: StorageLevel): FilteredCartesianRDD.this.type
    Definition Classes
    RDD
  95. def pipe(command: Seq[String], env: Map[String, String], printPipeContext: ((String) ⇒ Unit) ⇒ Unit, printRDDElement: ((T, U), (String) ⇒ Unit) ⇒ Unit, separateWorkingDir: Boolean, bufferSize: Int, encoding: String): RDD[String]
    Definition Classes
    RDD
  96. def pipe(command: String, env: Map[String, String]): RDD[String]
    Definition Classes
    RDD
  97. def pipe(command: String): RDD[String]
    Definition Classes
    RDD
  98. final def preferredLocations(split: Partition): Seq[String]
    Definition Classes
    RDD
  99. def randomSplit(weights: Array[Double], seed: Long): Array[RDD[(T, U)]]
    Definition Classes
    RDD
  100. var rdd1: RDD[T]
  101. var rdd2: RDD[U]
  102. def reduce(f: ((T, U), (T, U)) ⇒ (T, U)): (T, U)
    Definition Classes
    RDD
  103. def repartition(numPartitions: Int)(implicit ord: Ordering[(T, U)]): RDD[(T, U)]
    Definition Classes
    RDD
  104. def sample(withReplacement: Boolean, fraction: Double, seed: Long): RDD[(T, U)]
    Definition Classes
    RDD
  105. def saveAsObjectFile(path: String): Unit
    Definition Classes
    RDD
  106. def saveAsTextFile(path: String, codec: Class[_ <: CompressionCodec]): Unit
    Definition Classes
    RDD
  107. def saveAsTextFile(path: String): Unit
    Definition Classes
    RDD
  108. def setName(_name: String): FilteredCartesianRDD.this.type
    Definition Classes
    RDD
  109. def sortBy[K](f: ((T, U)) ⇒ K, ascending: Boolean, numPartitions: Int)(implicit ord: Ordering[K], ctag: ClassTag[K]): RDD[(T, U)]
    Definition Classes
    RDD
  110. def sparkContext: SparkContext
    Definition Classes
    RDD
  111. def subtract(other: RDD[(T, U)], p: Partitioner)(implicit ord: Ordering[(T, U)]): RDD[(T, U)]
    Definition Classes
    RDD
  112. def subtract(other: RDD[(T, U)], numPartitions: Int): RDD[(T, U)]
    Definition Classes
    RDD
  113. def subtract(other: RDD[(T, U)]): RDD[(T, U)]
    Definition Classes
    RDD
  114. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  115. def take(num: Int): Array[(T, U)]
    Definition Classes
    RDD
  116. def takeOrdered(num: Int)(implicit ord: Ordering[(T, U)]): Array[(T, U)]
    Definition Classes
    RDD
  117. def takeSample(withReplacement: Boolean, num: Int, seed: Long): Array[(T, U)]
    Definition Classes
    RDD
  118. def toDebugString: String
    Definition Classes
    RDD
  119. def toJavaRDD(): JavaRDD[(T, U)]
    Definition Classes
    RDD
  120. def toLocalIterator: Iterator[(T, U)]
    Definition Classes
    RDD
  121. def toString(): String
    Definition Classes
    RDD → AnyRef → Any
  122. def top(num: Int)(implicit ord: Ordering[(T, U)]): Array[(T, U)]
    Definition Classes
    RDD
  123. def treeAggregate[U](zeroValue: U)(seqOp: (U, (T, U)) ⇒ U, combOp: (U, U) ⇒ U, depth: Int)(implicit arg0: ClassTag[U]): U
    Definition Classes
    RDD
  124. def treeReduce(f: ((T, U), (T, U)) ⇒ (T, U), depth: Int): (T, U)
    Definition Classes
    RDD
  125. def union(other: RDD[(T, U)]): RDD[(T, U)]
    Definition Classes
    RDD
  126. def unpersist(blocking: Boolean): FilteredCartesianRDD.this.type
    Definition Classes
    RDD
  127. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  128. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  129. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  130. def withResources(rp: ResourceProfile): FilteredCartesianRDD.this.type
    Definition Classes
    RDD
    Annotations
    @Experimental() @Since( "3.1.0" )
  131. def zip[U](other: RDD[U])(implicit arg0: ClassTag[U]): RDD[((T, U), U)]
    Definition Classes
    RDD
  132. def zipPartitions[B, C, D, V](rdd2: RDD[B], rdd3: RDD[C], rdd4: RDD[D])(f: (Iterator[(T, U)], Iterator[B], Iterator[C], Iterator[D]) ⇒ Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[C], arg2: ClassTag[D], arg3: ClassTag[V]): RDD[V]
    Definition Classes
    RDD
  133. def zipPartitions[B, C, D, V](rdd2: RDD[B], rdd3: RDD[C], rdd4: RDD[D], preservesPartitioning: Boolean)(f: (Iterator[(T, U)], Iterator[B], Iterator[C], Iterator[D]) ⇒ Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[C], arg2: ClassTag[D], arg3: ClassTag[V]): RDD[V]
    Definition Classes
    RDD
  134. def zipPartitions[B, C, V](rdd2: RDD[B], rdd3: RDD[C])(f: (Iterator[(T, U)], Iterator[B], Iterator[C]) ⇒ Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[C], arg2: ClassTag[V]): RDD[V]
    Definition Classes
    RDD
  135. def zipPartitions[B, C, V](rdd2: RDD[B], rdd3: RDD[C], preservesPartitioning: Boolean)(f: (Iterator[(T, U)], Iterator[B], Iterator[C]) ⇒ Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[C], arg2: ClassTag[V]): RDD[V]
    Definition Classes
    RDD
  136. def zipPartitions[B, V](rdd2: RDD[B])(f: (Iterator[(T, U)], Iterator[B]) ⇒ Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[V]): RDD[V]
    Definition Classes
    RDD
  137. def zipPartitions[B, V](rdd2: RDD[B], preservesPartitioning: Boolean)(f: (Iterator[(T, U)], Iterator[B]) ⇒ Iterator[V])(implicit arg0: ClassTag[B], arg1: ClassTag[V]): RDD[V]
    Definition Classes
    RDD
  138. def zipWithIndex(): RDD[((T, U), Long)]
    Definition Classes
    RDD
  139. def zipWithUniqueId(): RDD[((T, U), Long)]
    Definition Classes
    RDD

Inherited from RDD[(T, U)]

Inherited from Logging

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped