org.bdgenomics.adam.rdd

BroadcastRegionJoin

sealed trait BroadcastRegionJoin[T, U, RT] extends RegionJoin[T, U, RT, U]

Contains multiple implementations of a 'region join', an operation that joins two sets of regions based on the spatial overlap between the regions.

Different implementations will have different performance characteristics -- and new implementations will likely be added in the future, see the notes to each individual method for more details.

Linear Supertypes
RegionJoin[T, U, RT, U], AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. BroadcastRegionJoin
  2. RegionJoin
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def joinAndFilterFn(tRdd: RDD[(ReferenceRegion, (ReferenceRegion, T))], uRdd: RDD[(ReferenceRegion, (ReferenceRegion, U))]): RDD[(RT, U)]

    Attributes
    protected
  2. abstract def regionsFor(u: (ReferenceRegion, U), regions: Broadcast[MultiContigNonoverlappingRegions]): Iterable[ReferenceRegion]

    Attributes
    protected

Concrete Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  13. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  14. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  15. final def notify(): Unit

    Definition Classes
    AnyRef
  16. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  17. def partitionAndJoin(baseRDD: RDD[(ReferenceRegion, T)], joinedRDD: RDD[(ReferenceRegion, U)])(implicit tManifest: ClassTag[T], uManifest: ClassTag[U]): RDD[(RT, U)]

    Performs a region join between two RDDs (broadcast join).

    Performs a region join between two RDDs (broadcast join).

    This implementation first _collects_ the left-side RDD; therefore, if the left-side RDD is large or otherwise idiosyncratic in a spatial sense (i.e. contains a set of regions whose unions overlap a significant fraction of the genome) then the performance of this implementation will likely be quite bad.

    Once the left-side RDD is collected, its elements are reduced to their distinct unions; these can then be used to define the partitions over which the region-join will be computed.

    The regions in the left-side are keyed by their corresponding partition (each such region should have exactly one partition). The regions in the right-side are also keyed by their corresponding partitions (here there can be more than one partition for a region, since a region may cross the boundaries of the partitions defined by the left-side).

    Finally, within each separate partition, we essentially perform a cartesian-product-and-filter operation. The result is the region-join.

    baseRDD

    The 'left' side of the join

    joinedRDD

    The 'right' side of the join

    tManifest

    implicit type of baseRDD

    uManifest

    implicit type of joinedRDD

    returns

    An RDD of pairs (x, y), where x is from baseRDD, y is from joinedRDD, and the region corresponding to x overlaps the region corresponding to y.

    Definition Classes
    BroadcastRegionJoinRegionJoin
  18. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  19. def toString(): String

    Definition Classes
    AnyRef → Any
  20. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from RegionJoin[T, U, RT, U]

Inherited from AnyRef

Inherited from Any

Ungrouped