Affiliation:
1. Institute of Computer Science, FORTH, Greece
2. Department of Computer Engineering, University of Murcia, Spain
Abstract
Persistent key-value stores have emerged as a main component in the data access path of modern data processing systems. However, they exhibit high CPU and I/O overhead. Nowadays, due to power limitations, it is important to reduce CPU overheads for data processing.
In this article, we propose
Kreon
, a key-value store that targets servers with flash-based storage, where CPU overhead and I/O amplification are more significant bottlenecks compared to I/O randomness. We first observe that two significant sources of overhead in key-value stores are: (a) The use of compaction in Log-Structured Merge-Trees (LSM-Tree) that constantly perform merging and sorting of large data segments and (b) the use of an I/O cache to access devices, which incurs overhead even for data that reside in memory. To avoid these,
Kreon
performs data movement from level to level by using partial reorganization instead of full data reorganization via the use of a full index per-level.
Kreon
uses memory-mapped I/O via a custom kernel path to avoid a user-space cache.
For a large dataset,
Kreon
reduces CPU cycles/op by up to 5.8×, reduces I/O amplification for inserts by up to 4.61×, and increases insert ops/s by up to 5.3×, compared to RocksDB.
Funder
European Commission FEDER
Publisher
Association for Computing Machinery (ACM)
Subject
Hardware and Architecture
Reference77 articles.
1. Apache. 2018. HBase. Retrieved from https://hbase.apache.org/. Apache. 2018. HBase. Retrieved from https://hbase.apache.org/.
2. Jens Axboe. 2017. Flexible I/O Tester. Retrieved from https://github.com/axboe. Jens Axboe. 2017. Flexible I/O Tester. Retrieved from https://github.com/axboe.
3. Jens Axboe. 2019. Efficient IO with io_uring. Retrieved from https://kernel.dk/io_uring.pdf. Jens Axboe. 2019. Efficient IO with io_uring. Retrieved from https://kernel.dk/io_uring.pdf.
Cited by
9 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. SuccinctKV: a CPU-efficient LSM-tree Based KV Store with Scan-based Compaction;ACM Transactions on Architecture and Code Optimization;2024-09-13
2. Enhancing LSM-Tree Key-Value Stores for Read-Modify-Writes via Key-Delta Separation;2024 IEEE 40th International Conference on Data Engineering (ICDE);2024-05-13
3. IndeXY: A Framework for Constructing Indexes Larger than Memory;2024 IEEE 40th International Conference on Data Engineering (ICDE);2024-05-13
4. Limon: A Scalable and Stable Key-Value Engine for Fast NVMe Devices;IEEE Transactions on Computers;2023-10
5. HEPnOS: a Specialized Data Service for High Energy Physics Analysis;2023 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW);2023-05