CAPI-Flash Accelerated Persistent Read Cache for Apache Cassandra

Conference Paper (2018)
Author(s)

Bedri Sendir (State University of New York at Binghamton, IBM Research)

Madhusudhan Govindaraju (State University of New York at Binghamton)

Rei Odaira (IBM Research)

Peter Hofstee (TU Delft - Electrical Engineering, Mathematics and Computer Science, IBM Research)

Research Group
Computer Engineering
DOI related publication
https://doi.org/10.1109/CLOUD.2018.00035 Final published version
More Info
expand_more
Publication Year
2018
Language
English
Research Group
Computer Engineering
Pages (from-to)
220-228
ISBN (print)
978-1-5386-7236-5
ISBN (electronic)
978-1-5386-7235-8
Event
CLOUD 2018 IEEE (2018-09-10 - 2018-09-10), San Francisco, United States
Downloads counter
110

Abstract

In real-world NoSQL deployments, users have to trade off CPU, memory, I/O bandwidth and storage space to achieve the required performance and efficiency goals. Data compression is a vital component to improve storage space efficiency, but reading compressed data increases response time. Therefore, compressed data stores rely heavily on using the memory as a cache to speed up read operations. However, as large DRAM capacity is expensive, NoSQL databases have become costly to deploy and hard to scale. In our work, we present a persistent caching mechanism for Apache Cassandra on a high-throughput, low-latency FPGA-based NVMe Flash accelerator (CAPI-Flash), replacing Cassandra's in-memory cache. Because flash is dramatically less expensive per byte than DRAM, our caching mechanism provides Apache Cassandra with access to a large caching layer at lower cost. The experimental results show that for read-intensive workloads, our caching layer provides up to 85% improved throughput and also reduces CPU usage by 25% compared to default Cassandra.