FASTER: An Embedded Concurrent Key-Value Store for State Management - Chandramouli, Badrish; Prasaad, Guna; Kossmann, Donald; Levandoski, Justin; Hunter, James; Barnett, Mike (PVLDB, 2018)
Over the last decade, there has been a tremendous growth in data-intensive applications and services in the cloud. Data is created on a variety of edge sources such as devices, and is processed by cloud applications to gain insights or make decisions. These applications are typically update intensive and involve a large amount of state beyond what can fit in main memory. However, they display significant temporal locality in their access pattern. We demonstrate FASTER, a new key-value store that combines a latch-free concurrent hash index with a "hybrid log": a concurrent log-structured record store that spans main memory and storage, while supporting fast in-place updates in memory. FASTER achieves up to orders-of-magnitude better throughput than systems deployed widely today. It is built as an embedded high-level language component using dynamic code generation, and can work with any storage back-end such as local SSD or cloud storage. Our demonstration focuses on: (1) the ease with which cloud applications and state stores can deeply integrate state management into their high-level language logic at low overhead; and (2) the innovative system design and the resulting high performance, adaptability to varying memory capacities, durability, and natural caching properties of our system.