Class CountMinSketch
java.lang.Object
org.apache.pekko.remote.artery.compress.CountMinSketch
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 -
Method Summary
Modifier and TypeMethodDescriptionlongaddObjectAndEstimateCount(Object item, long count) Similar toadd, however we reuse the fact that the hask buckets have to be calculated foraddalready, and a separateestimateCountoperation would have to calculate them again, so we do it all in one go.doublelongestimateCount(Object item) The estimate is correct within'epsilon' * (total item count), with probabilityconfidence.doubleReferred to asepsilonin the whitepaperlongsize()toString()
-
Constructor Details
-
CountMinSketch
public CountMinSketch(int depth, int width, int seed)
-
-
Method Details
-
relativeError
public double relativeError()Referred to asepsilonin the whitepaper -
confidence
public double confidence() -
addObjectAndEstimateCount
Similar toadd, however we reuse the fact that the hask buckets have to be calculated foraddalready, and a separateestimateCountoperation would have to calculate them again, so we do it all in one go. -
size
public long size() -
estimateCount
The estimate is correct within'epsilon' * (total item count), with probabilityconfidence. -
toString
-