Class

com.metamx.tranquility.beam

ClusteredBeam

Related Doc: package beam

Permalink

class ClusteredBeam[EventType, InnerBeamType <: Beam[EventType]] extends Beam[EventType] with Logging

Beam composed of a stack of smaller beams. The smaller beams are split across two axes: timestamp (time shard of the data) and partition (shard of the data within one time interval). The stack of beams for a particular timestamp are created in a coordinated fashion, such that all ClusteredBeams for the same identifier will have semantically identical stacks. This interaction is mediated through zookeeper. Beam information persists across ClusteredBeam restarts.

In the case of Druid, each merged beam corresponds to one segment partition number, and each inner beam corresponds to either one index task or a set of redundant index tasks.

                             ClusteredBeam

                    +-------------+---------------+
2010-01-02T03:00:00 |                             |   2010-01-02T04:00:00
                    |                             |
                    v                             v

          +----+ Merged +----+                   ...
          |                  |
     partition 1         partition 2
          |                  |
          v                  v

      Decorated           Decorated

    InnerBeamType       InnerBeamType
Linear Supertypes
Logging, Beam[EventType], AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ClusteredBeam
  2. Logging
  3. Beam
  4. AnyRef
  5. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ClusteredBeam(zkBasePath: String, identifier: String, tuning: ClusteredBeamTuning, curator: CuratorFramework, emitter: ServiceEmitter, timekeeper: Timekeeper, objectMapper: ObjectMapper, beamMaker: BeamMaker[EventType, InnerBeamType], beamDecorateFn: (Interval, Int) ⇒ (Beam[EventType]) ⇒ Beam[EventType], beamMergeFn: (Seq[Beam[EventType]]) ⇒ Beam[EventType], alertMap: Dict)(implicit arg0: Timestamper[EventType])

    Permalink

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def close(): Future[Unit]

    Permalink

    Signal that no more messages will be sent.

    Signal that no more messages will be sent. Many implementations need this to do proper cleanup. This operation may happen asynchronously.

    returns

    future that resolves when closing is complete

    Definition Classes
    ClusteredBeamBeam
  7. final def eq(arg0: AnyRef): Boolean

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

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

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

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

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

    Permalink
    Definition Classes
    Any
  13. lazy val log: Logger

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

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

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

    Permalink
    Definition Classes
    AnyRef
  17. def sendBatch(events: Seq[EventType]): Future[BitSet]

    Permalink

    Request propagation of messages.

    Request propagation of messages. The returned bitset contains the indexes of messages known to be sent successfully. Note that for some implementations, it is possible for a message to be sent and for the ack to be lost (e.g. if the send is occurring over a network).

    returns

    a bitset containing indexes of messages that were sent successfully

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

    Permalink
    Definition Classes
    AnyRef
  19. val timestamper: (EventType) ⇒ DateTime

    Permalink
  20. def toString(): String

    Permalink
    Definition Classes
    ClusteredBeam → AnyRef → Any
  21. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. final def propagate(messages: Seq[EventType]): Future[Int]

    Permalink

    Request propagation of messages.

    Request propagation of messages. The return value indicates the number of messages known to be sent successfully. Note that for some implementations, it is possible for a message to be sent and for the ack to be lost (e.g. if the send is occurring over a network).

    messages

    a batch of messages

    returns

    the number of messages propagated

    Definition Classes
    Beam
    Annotations
    @deprecated
    Deprecated

    (Since version 0.7.0) use sendBatch

Inherited from Logging

Inherited from Beam[EventType]

Inherited from AnyRef

Inherited from Any

Ungrouped