Class HyperLogLogPlusPlus

java.lang.Object
org.elasticsearch.search.aggregations.metrics.HyperLogLogPlusPlus
All Implemented Interfaces:
java.io.Closeable, java.lang.AutoCloseable, Releasable

public final class HyperLogLogPlusPlus
extends java.lang.Object
implements Releasable
Hyperloglog++ counter, implemented based on pseudo code from http://static.googleusercontent.com/media/research.google.com/fr//pubs/archive/40671.pdf and its appendix https://docs.google.com/document/d/1gyjfMHy43U9OWBXxfaeG-3MjGzejW1dlpyMwEYAAWEI/view?fullscreen This implementation is different from the original implementation in that it uses a hash table instead of a sorted list for linear counting. Although this requires more space and makes hyperloglog (which is less accurate) used sooner, this is also considerably faster. Trying to understand what this class does without having read the paper is considered adventurous.