org.hammerlab.guacamole.loci.partitioning

MicroRegionPartitioner

class MicroRegionPartitioner[R <: ReferenceRegion] extends LociPartitioner

Assign loci from a LociSet to partitions, where each partition overlaps approximately the same number of "regions" (reads mapped to a reference genome).

The approach we take is:

(1) chop up the loci uniformly into many genomic "micro partitions."

(2) for each micro partition, calculate the number of regions that overlap it.

(3) using these counts, assign loci to real (Spark) partitions, assuming approximately uniform depth within each micro partition.

Some advantages of this approach are:

returns

LociMap of locus -> partition assignments.

Linear Supertypes
LociPartitioner, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. MicroRegionPartitioner
  2. LociPartitioner
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new MicroRegionPartitioner(regions: RDD[R], numPartitions: NumPartitions, microPartitionsPerPartition: NumMicroPartitions)(implicit arg0: ClassTag[R])

    numPartitions

    Number of partitions to split reads into.

    microPartitionsPerPartition

    Long >= 1. Number of micro-partitions generated for each of the numPartitions Spark partitions that will be computed. Higher values of this will result in a more exact but more expensive computation. In the extreme, setting this to greater than the number of loci (per partition) will result in an exact calculation.

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 partition(loci: LociSet): LociPartitioning

  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 LociPartitioner

Inherited from AnyRef

Inherited from Any

Ungrouped