Harmonious distributed data processing & analysis in Rust.
An implementation of a count-min sketch data structure with conservative updating for increased accuracy.
An implementation of the HyperLogLog data structure with bias correction.
Given population and sample sizes, returns true if this element is in the sample. Without replacement.
Reservoir sampling. Without replacement, and the returned order is unstable.
This data structure tracks the
This probabilistic data structure tracks the
An iterator over the entries and counts in a
Intersect zero or more
An optimisation for cases like putting a HyperLogLog inside a Count–min sketch, where intersecting, adding a val, and then unioning that with counters is the same as simply adding the val to the counters.
New instances are instantiable given a specified input of