Package akka.remote.artery.compress
Class CountMinSketch
- java.lang.Object
-
- akka.remote.artery.compress.CountMinSketch
-
public class CountMinSketch extends java.lang.Object
INTERNAL API: Count-Min Sketch datastructure.Not thread-safe.
An Improved Data Stream Summary: The Count-Min Sketch and its Applications https://web.archive.org/web/20060907232042/http://www.eecs.harvard.edu/~michaelm/CS222/countmin.pdf This implementation is mostly taken and adjusted from the Apache V2 licensed project `stream-lib`, located here: https://github.com/clearspring/stream-lib/blob/master/src/main/java/com/clearspring/analytics/stream/frequency/CountMinSketch.java
-
-
Constructor Summary
Constructors Constructor Description CountMinSketch(int depth, int width, int seed)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description long
addObjectAndEstimateCount(java.lang.Object item, long count)
Similar toadd
, however we reuse the fact that the hask buckets have to be calculated foradd
already, and a separateestimateCount
operation would have to calculate them again, so we do it all in one go.double
confidence()
long
estimateCount(java.lang.Object item)
The estimate is correct within'epsilon' * (total item count)
, with probabilityconfidence
.double
relativeError()
Referred to asepsilon
in the whitepaperlong
size()
java.lang.String
toString()
-
-
-
Method Detail
-
relativeError
public double relativeError()
Referred to asepsilon
in the whitepaper
-
confidence
public double confidence()
-
addObjectAndEstimateCount
public long addObjectAndEstimateCount(java.lang.Object item, long count)
Similar toadd
, however we reuse the fact that the hask buckets have to be calculated foradd
already, and a separateestimateCount
operation would have to calculate them again, so we do it all in one go.
-
size
public long size()
-
estimateCount
public long estimateCount(java.lang.Object item)
The estimate is correct within'epsilon' * (total item count)
, with probabilityconfidence
.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-