Forecast — where it appears
Named by 2 essays across one field — each of them below, with the objects they name alongside it.
Also named here as quotient filter — the same set of essays touches all of them, so they are one junction rather than several.
The bits given to the wrong keys
A fingerprint table that gives later arrivals longer fingerprints holds 3.6% where a table that reserves nothing holds 21.1%, and it never runs out of reserve because it has none. It also dies at exactly the same size as the table that reserved nothing — 32 times its forecast, on the same key — because every generation shares one quotient, and the generation with the shortest fingerprint is the one that arrived first.
The day a filter cannot grow
A fingerprint table dies when its quotient reaches its shortest fingerprint, and a filter cannot lengthen a fingerprint because it does not keep its keys. The store it filters does. Rebuilt from that store whenever its own count says its rate has passed 1%, a table grown a thousandfold never exceeds 1.05% and ends holding exactly what a reserve of ten bits holds — 18.9 bits a key — having read the store 1.34 times over. The reserve paid its bits early: 34.8 a key at four times the forecast, where the rebuilt table held 18.4. Which one is cheaper depends on whether the growth arrives.
Named alongside it
The objects these essays reach for when they reach for this one.
AmortisationApproximate membershipBloom filterDesign parameterFalse-positive rateFingerprintQuotient filterResizingSpace time tradeHash functionHonest limitThreshold