Apache datasketches

Clone this repo:
  1. ad51fe6 Merge pull request #75 from apache/bloomfilter by Pierre Lacave · 6 hours ago main
  2. b6a455b Merge pull request #78 from tsenart/master by Pierre Lacave · 6 hours ago
  3. 055aada Merge pull request #77 from proost/fix-underflow by Pierre Lacave · 6 hours ago
  4. 15bcc91 kll: reduce allocations in ItemsSketch by Tomás Senart · 18 hours ago
  5. 80ac30a fix: underflow by lani_karrot · 26 hours ago

Go Go Report Card Release GoDoc License

Apache® DataSketches™ Core Go Library Component

This is the core Go component of the DataSketches library. It contains some of the sketching algorithms and can be accessed directly from user applications.

Note that we have a parallel core component for C++, Java and Python implementations of the same sketch algorithms, datasketches-cpp and datasketches-java.

Please visit the main DataSketches website for more information.

If you are interested in making contributions to this site please see our Community page for how to contact us.

Major Sketches

TypeImplementationStatus
Cardinality
CpcSketch⚠️
HllSketch⚠️
ThetaSketch⚠️
TupleSketch🚧
Quantiles
CormodeDoublesSketch
CormodeItemsSketch
KllDoublesSketch
KllFloatsSketch
KllSketch⚠️
ReqFloatsSketch
Frequencies
FreqLongsSketch⚠️
FreqItemsSketch⚠️
CountMinSketch⚠️
Sampling
ReservoirLongsSketch
ReserviorItemsSketch
VarOptItemsSketch
Membership
BloomFilter🚧

Specialty Sketches

TypeInterface NameStatus
Cardinality/FM85UniqueCountMap
Cardinality/TupleFdtSketch
FdtSketch
ArrayOfDoublesSketch
DoubleSketch
IntegerSketch
ArrayOfStringsSketch
EngagementTest3

❌ = Not yet implemented

⚠️ = Implemented but not officially released

🚧 = In progress

=================

This code requires Go 1.24