Litcius/Paper detail

Order-Preserving Key Compression for In-Memory Search Trees

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

202030 citationsDOIOpen Access PDF

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.

Topics & Concepts

Computer scienceKey (lock)Search treeGranularityEncoding (memory)TrieExploitData compressionCompression ratioData structureSearch engine indexingSpeedupTheoretical computer scienceData compression ratioEncoderEntropy (arrow of time)Binary search treeAlgorithmParallel computingSearch algorithmBinary treeArtificial intelligenceImage compressionEngineeringProgramming languageImage processingImage (mathematics)Automotive engineeringComputer securityQuantum mechanicsInternal combustion enginePhysicsOperating systemAlgorithms and Data CompressionAdvanced Data Storage TechnologiesNetwork Packet Processing and Optimization
Order-Preserving Key Compression for In-Memory Search Trees | Litcius