Making Array-Based Translation Practical for Modern, High-Performance Buffer Management
Xinjing Zhou, Jinming Hu, Andrew Pavlo, Michael Stonebraker

TL;DR
This paper introduces extbf{ extcalico}, a practical buffer pool system using array-based translation for modern databases, achieving high performance across diverse workloads with innovative techniques.
Contribution
It demonstrates the viability of array-based translation in DBMS buffer pools, with new techniques to optimize performance and integrate seamlessly with existing systems.
Findings
extcalico matches or outperforms state-of-the-art in-memory and out-of-memory performance.
extcalico achieves up to 3.9× in-memory and 6.5× larger-than-memory speedup in PostgreSQL vector search.
Scan-heavy workloads see up to 3× speedup with extcalico.
Abstract
Modern buffer pools must now support a broader workload mix than classic OLTP alone. In addition to B-tree lookups, database systems increasingly serve scan-heavy analytics and vector-search indexes with irregular high-fan-out graph traversal access patterns. These workloads require a translation mechanism -- mapping logical page IDs to resident frames -- that is simultaneously fast across these diverse access patterns, deployable in user space,compatible with huge pages, easy to integrate, and still under DBMS control for eviction and I/O. Existing designs satisfy only subsets of these goals. This paper presents \textbf{\calico}, a practical DBMS-controlled buffer pool built around array-based translation, a decades-old-idea that was dissmissed but now viable with modern hardware. \calico decouples logical translation from OS page tables so that the DBMS can combine low-overhead…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
