Packages

  • package root
    Definition Classes
    root
  • package com
    Definition Classes
    root
  • package twitter
    Definition Classes
    com
  • package algebird
    Definition Classes
    twitter
  • final class DecayingCMS[K] extends Serializable

    DecayingCMS is a module to build count-min sketch instances whose counts decay exponentially.

    DecayingCMS is a module to build count-min sketch instances whose counts decay exponentially.

    Similar to a Map[K, com.twitter.algebird.DecayedValue], each key is associated with a single count value that decays over time. Unlike a map, the decyaing CMS is an approximate count -- in exchange for the possibility of over-counting, we can bound its size in memory.

    The intended use case is for metrics or machine learning where exact values aren't needed.

    You can expect the keys with the biggest values to be fairly accurate but the very small values (rare keys or very old keys) to be lost in the noise. For both metrics and ML this should be fine: you can't learn too much from very rare values.

    We recommend depth of at least 5, and width of at least 100, but you should do some experiments to determine the smallest parameters that will work for your use case.

    Definition Classes
    algebird
  • CMS
  • DoubleAt

class DoubleAt extends Serializable

Represents a decaying scalar value at a particular point in time.

The value decays according to halfLife. Another way to think about DoubleAt is that it represents a particular decay curve (and in particular, a point along that curve). Two DoubleAt values may be equivalent if they are two points on the same curve.

The timeToZero and timeToUnit methods can be used to "normalize" DoubleAt values. If two DoubleAt values do not produce the same (approximate) Double values from these methods, they represent different curves.

Self Type
DoubleAt
Linear Supertypes
Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DoubleAt
  2. Serializable
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def *(n: Double): DoubleAt
  4. def +(rhs: DoubleAt): DoubleAt
  5. def -(rhs: DoubleAt): DoubleAt
  6. def /(rhs: DoubleAt): Double
  7. def <(rhs: DoubleAt): Boolean
  8. def <=(rhs: DoubleAt): Boolean
  9. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  10. def >(rhs: DoubleAt): Boolean
  11. def >=(rhs: DoubleAt): Boolean
  12. def abs: DoubleAt
  13. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  14. def at(time: Long): Double
  15. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  16. def compare(rhs: DoubleAt): Int

    We consider two DoubleAt values equal not just if their elements are equal, but also if they represent the same value at different points of decay.

  17. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  18. def equals(that: Any): Boolean
    Definition Classes
    DoubleAt → AnyRef → Any
  19. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  20. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  21. def hashCode(): Int
    Definition Classes
    DoubleAt → AnyRef → Any
  22. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  23. def max(rhs: DoubleAt): DoubleAt
  24. def min(rhs: DoubleAt): DoubleAt
  25. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  26. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  27. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  28. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  29. def time: Long
  30. val timeInHL: Double
  31. def timeToUnit: Double

    This is the scaled time when the current value will reach 1 (or -1 for negative values)

    This is the scaled time when the current value will reach 1 (or -1 for negative values)

    This method is a way of collapsing a DoubleAt into a single value (the time in the past or future where its value would be 1, the unit value).

  32. def timeToZero: Double

    Time when this value will reach the smallest double value bigger than zero, unless we are already at zero in which case we return the current time

  33. def toString(): String
    Definition Classes
    DoubleAt → AnyRef → Any
  34. def unary_-: DoubleAt
  35. val value: Double
  36. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  37. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  38. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped