HackerPapers

arXiv:2003.02391cs.DB

Order-Preserving Key Compression for In-Memory Search Trees

Huanchen Zhang, Xiaoxuan Liu, David G. Andersen, Michael Kaminsky, Kimberly Keeton, Andrew Pavlo

Abstract

We present the High-speed Order-Preserving Encoder (HOPE) for in-memory search trees. HOPE is a fast dictionary-based compressor that encodes arbitrary keys while preserving their order. HOPE's approach is to identify common key patterns at a fine granularity and exploit the entropy to achieve high compression rates with a small dictionary. We first develop a theoretical model to reason about order-preserving dictionary designs. We then select six representative compression schemes using this model and implement them in HOPE. These schemes make different trade-offs between compression rate and encoding speed. We evaluate HOPE on five data structures used in databases: SuRF, ART, HOT, B+tree, and Prefix B+tree. Our experiments show that using HOPE allows the search trees to achieve lower query latency (up to 40\% lower) and better memory efficiency (up to 30\% smaller) simultaneously for most string key workloads.

arXiv comments
SIGMOD'20 version + Appendix
Journal reference
DOI
Subjects
cs.DBDatabases

On Hacker News

Linked by 2 identifiable commenters in 2 comments across 2 threads, from Mar 2020 to Jun 2020. Found in 1 HN submission from Mar 2020 to Mar 2020. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments2 threads

    • There was an aspect of that in the first part of the thesis, but the rest has techniques that are independent. You can roughly break the thesis down by paper: * Hybrid Indexes (a read-only, full-block kinda thing where you have to handle inserts by using a second read-write…

      dgacmuView on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.