apache / datasketches-java

A software library of stochastic streaming algorithms, a.k.a. sketches.
https://datasketches.apache.org
Apache License 2.0
875 stars 207 forks source link

quotient filter builder bucket suggestion change #580

Open c-dickens opened 5 days ago

c-dickens commented 5 days ago

The Quotient filter number of slots suggestion function currently hardcodes the load factor for the lgNumSlots suggestion. When we decide whether to pass the LOAD_FACTOR constant as a parameter to the filter, we also need to appropriately update the suggestion functions.

Alternatively, we could add a further parameter to suggestLgNumSlots(long maxDistinctItems) to change it to suggestLgNumSlots(long maxDistinctItems, double maxLoad) along with the change byte result = (byte) Math.ceil(Math.log(maxDistinctItems / maxLoad) / Math.log(2));