Adaptive Quotient Filters
Richard Wen, Hunter McCoy, David Tench, Guido Tagliavini, Michael A. Bender, Alex Conway, Martin Farach-Colton, Rob Johnson, Prashant Pandey
TL;DR
AdaptiveQF introduces the first practical strongly adaptive filter built on the quotient filter, achieving minimal adaptivity overhead while guaranteeing that false positives do not reappear for adversarial workloads. The design extends fingerprints with variable-length extensions and uses a compact reverse map (or merged reverse map) to locate original keys efficiently, preserving cache locality, mergeability, and deletions. The paper proves space bounds for static yes/no list problems and demonstrates that AdaptiveQF attains near-optimal space up to low-order terms, while delivering substantial performance gains on skewed and adversarial workloads, especially when paired with disk-backed databases. Empirically, AdaptiveQF outperforms existing adaptive filters by orders of magnitude in certain regimes and approaches non-adaptive filters in space with much stronger adaptivity guarantees, making it practical for real systems and dynamic workloads.
Abstract
Adaptive filters, such as telescoping and adaptive cuckoo filters, update their representation upon detecting a false positive to avoid repeating the same error in the future. Adaptive filters require an auxiliary structure, typically much larger than the main filter and often residing on slow storage, to facilitate adaptation. However, existing adaptive filters are not practical and have seen no adoption in real-world systems due to two main reasons. Firstly, they offer weak adaptivity guarantees, meaning that fixing a new false positive can cause a previously fixed false positive to come back. Secondly, the sub-optimal design of the auxiliary structure results in adaptivity overheads so substantial that they can actually diminish the overall system performance compared to a traditional filter. In this paper, we design and implement AdaptiveQF, the first practical adaptive filter with minimal adaptivity overhead and strong adaptivity guarantees, which means that the performance and false-positive guarantees continue to hold even for adversarial workloads. The AdaptiveQF is based on the state-of-the-art quotient filter design and preserves all the critical features of the quotient filter such as cache efficiency and mergeability. Furthermore, we employ a new auxiliary structure design which results in considerably low adaptivity overhead and makes the AdaptiveQF practical in real systems.
