Cuckoo Index: A Lightweight Secondary Index Structure
Andreas Kipf, Damian Chromejko, Alexander Hall, Peter Boncz, David G. Andersen
Abstract
In modern data warehousing, data skipping is essential for high query performance. While index structures such as B-trees or hash tables allow for precise pruning, their large storage requirements make them impractical for indexing secondary columns. Therefore, many systems rely on approximate indexes such as min/max sketches (ZoneMaps) or Bloom filters for cost-effective data pruning. For example, Google PowerDrill skips more than 90% of data on average using such indexes. In this paper, we introduce Cuckoo Index (CI), an approximate secondary index structure that represents the many-to-many relationship between keys and data partitions in a highly space-efficient way. At its core, CI associates variable-sized fingerprints in a Cuckoo filter with compressed bitmaps indicating qualifying partitions. With our approach, we target equality predicates in a read-only (immutable) setting and optimize for space efficiency under the premise of practical build and lookup performance. In contrast to per-partition (Bloom) filters, CI produces correct results for lookups with keys that occur in the data. CI allows to control the ratio of false positive partitions for lookups with non-occurring keys. Our experiments with real-world and synthetic data show that CI consumes significantly less space than per-partition filters for the same pruning power for low-to-medium cardinality columns. For high cardinality columns, CI is on par with its baselines.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 01f3c991-22b8-4f00-af53-b7d4ebf5f4b5Cited by top-tier papers7
- Can Learned Models Replace Hash Functions?Ibrahim Sabek, Kapil Vaidya, Dominik Horn, Andreas Kipf et al.VLDB 2023 · 29 citations
- Fast Algorithms for Denial Constraint DiscoveryEduardo H. M. Pena, Fábio Porto, Felix NaumannVLDB 2023 · 23 citations
- Revisiting Secondary Indexing in LSM-based Storage Systems with Persistent MemoryJing Wang, Youyou Lu, Qing Wang, Yuhao Zhang et al.USENIX ATC 2023 · 13 citations
- Sieve: A Learned Data-Skipping Index for Data AnalyticsYulai Tong, Jiazhen Liu, Hua Wang, Ke Zhou et al.VLDB 2023 · 10 citations
- NEXT: A New Secondary Index Framework for LSM-based Data StorageJiachen Shi, Jingyi Yang, Gao Cong, Xiaoli LiSIGMOD 2025 · 3 citations
Builds on3
- Learning Multi-Dimensional IndexesVikram Nathan, Jialin Ding, Mohammad Alizadeh, Tim KraskaSIGMOD 2020 · 180 citations
- Tsunami: A Learned Multi-dimensional Index for Correlated Data and Skewed WorkloadsJialin Ding, Vikram Nathan, Mohammad Alizadeh, Tim KraskaVLDB 2021 · 178 citations
- Tree-Encoded BitmapsHarald Lang, Alexander Beischl, Viktor Leis, Peter Boncz et al.SIGMOD 2020 · 11 citations
Related papers
- Vacuum Filters: More Space-Efficient and Faster Replacement for Bloom and Cuckoo FiltersMinmei Wang, Mingxun Zhou, Shouqian Shi, Chen QianVLDB 2020 · 58 citations
- A Learned Cuckoo Filter for Approximate Membership Queries over Variable-sized Sliding Windows on Data StreamsYao Tian, Tingyun Yan, Ruiyuan Zhang, Kai Huang et al.SIGMOD 2024 · 7 citations
- Conditional Cuckoo FiltersDaniel Ting, Rick ColeSIGMOD 2021 · 13 citations
- A four-dimensional Analysis of Partitioned Approximate FiltersTobias Schmidt, Maximilian Bandle, Jana GicevaVLDB 2021 · 6 citations
- Prefix Filter: Practically and Theoretically Better Than BloomTomer Even, Guy Even, Adam MorrisonVLDB 2022 · 13 citations
