object HyperLogLogAggregator extends Serializable
This object makes it easier to create Aggregator instances that use HLL
- Alphabetic
- By Inheritance
- HyperLogLogAggregator
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def apply(bits: Int): HyperLogLogAggregator
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def sizeAggregator(bits: Int): MonoidAggregator[Array[Byte], HLL, Double]
Create an Aggregator that returns the estimate size, not the HLL approximate data structure itself.
Create an Aggregator that returns the estimate size, not the HLL approximate data structure itself. This is convenient, but cannot be combined later with another unique count like an HLL could.
- bits
is the log of the size the HLL.
- def sizeWithError(err: Double): MonoidAggregator[Array[Byte], HLL, Double]
Give an approximate set size (not the HLL) based on inputs of Array[Byte] see HyperLogLog.bitsForError for a size table based on the error see SetSizeHashAggregator for a version that uses exact sets up to a given size
- def sizeWithErrorGeneric[K](err: Double)(implicit hash128: Hash128[K]): MonoidAggregator[K, HLL, Long]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- def withBits[K](bits: Int)(implicit hash128: Hash128[K]): GenHLLAggregator[K]
This creates an HLL for type K, that uses (2^bits) bytes to store
- def withError(err: Double): HyperLogLogAggregator
Give a HyperLogLog Aggregator that have the given error.
Give a HyperLogLog Aggregator that have the given error. It is up to you, using bitsForError, to see if the size is still practical for your application.
0.016 (1.6%), 4 KB 0.006 (0.6%), 32 KB 0.002 (0.2%), 256 KB 0.001 (0.1%), 1024 KB
Cutting the error in half takes 4x the size.
- def withErrorGeneric[K](err: Double)(implicit arg0: Hash128[K]): GenHLLAggregator[K]