skip to main content
research-article

A Contract-aware and Cost-effective LSM Store for Cloud Storage with Low Latency Spikes

Published: 04 April 2024 Publication History

Abstract

Cloud storage is gaining popularity because features such as pay-as-you-go significantly reduce storage costs. However, the community has not sufficiently explored its contract model and latency characteristics. As LSM-Tree-based key-value stores (LSM stores) become the building block for numerous cloud applications, how cloud storage would impact the performance of key-value accesses is vital. This study reveals the significant latency variances of Amazon Elastic Block Store (EBS) under various I/O pressures, which challenges LSM store read performance on cloud storage. To reduce the corresponding tail latency, we propose Calcspar, a contract-aware LSM store for cloud storage, which efficiently addresses the challenges by regulating the rate of I/O requests to cloud storage and absorbing surplus I/O requests with the data cache. We specifically developed a fluctuation-aware cache to lower the high latency brought on by workload fluctuations. Additionally, we build a congestion-aware IOPS allocator to reduce the impact of LSM store internal operations on read latency. We evaluated Calcspar on EBS with different real-world workloads and compared it to the cutting-edge LSM stores. The results show that Calcspar can significantly reduce tail latency while maintaining regular read and write performance, keeping the 99th percentile latency under 550μs and reducing average latency by 66%. In addition, Calcspar has lower write prices and average latency compared to Cloud NoSQL services offered by cloud vendors.

References

[2]
[5]
2023. AWS DynamoDB Pricing for On-Demand Capacity. https://aws.amazon.com/dynamodb/pricing/on-demand
[6]
2023. AWS DynamoDB Pricing for Provisioned Capacity. https://aws.amazon.com/dynamodb/pricing/provisioned
[7]
2023. Managing throughput Capacity Automatically with DynamoDB Auto Scaling. https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/AutoScaling.html
[9]
2024. Amazon DynamoDB Accelerator (DAX). https://aws.amazon.com/cn/dynamodb/dax/
[12]
[16]
Oana Balmau, Diego Didona, Rachid Guerraoui, Willy Zwaenepoel, Huapeng Yuan, Aashray Arora, Karan Gupta, and Pavan Konka. 2017. TRIAD: Creating synergies between memory, disk and log in log structured key-value stores. In 2017 USENIX Annual Technical Conference (USENIX ATC’17). 363–375.
[17]
Oana Balmau, Florin Dinu, Willy Zwaenepoel, Karan Gupta, Ravishankar Chandhiramoorthi, and Diego Didona. 2019. SILK: Preventing latency spikes in log-structured merge key-value stores. In 2019 USENIX Annual Technical Conference (USENIX ATC’19). 753–766.
[18]
Matias Bjørling, Jens Axboe, David Nellans, and Philippe Bonnet. 2013. Linux block IO: Introducing multi-queue SSD access on multi-core systems. In Proceedings of the 6th International Systems and Storage Conference. 1–10.
[19]
Zhichao Cao, Siying Dong, Sagar Vemuri, and David H. C. Du. 2020. Characterizing, modeling, and benchmarking RocksDB key-value workloads at Facebook. In 18th USENIX Conference on File and Storage Technologies (FAST’20). 209–223.
[20]
Yunpeng Chai, Yanfeng Chai, Xin Wang, Haocheng Wei, and Yangyang Wang. 2022. Adaptive lower-level driven compaction to optimize LSM-tree key-value stores. IEEE Transactions on Knowledge and Data Engineering 34, 6 (2022), 2595–2609. DOI:
[21]
Fay Chang, Jeffrey Dean, Sanjay Ghemawat, Wilson C. Hsieh, Deborah A. Wallach, Mike Burrows, Tushar Chandra, Andrew Fikes, and Robert E. Gruber. 2008. Bigtable: A distributed storage system for structured data. ACM Transactions on Computer Systems (TOCS) 26, 2 (2008), 1–26.
[22]
Brian F. Cooper, Adam Silberstein, Erwin Tam, Raghu Ramakrishnan, and Russell Sears. 2010. Benchmarking cloud serving systems with YCSB. In Proceedings of the 1st ACM Symposium on Cloud Computing (SoCC’10). 143–154.
[23]
Niv Dayan and Stratos Idreos. 2018. Dostoevsky: Better space-time trade-offs for LSM-tree based key-value stores via adaptive removal of superfluous merging. In Proceedings of the 2018 International Conference on Management of Data. 505–520.
[24]
Giuseppe DeCandia, Deniz Hastorun, Madan Jampani, Gunavardhan Kakulapati, Avinash Lakshman, Alex Pilchin, Swaminathan Sivasubramanian, Peter Vosshall, and Werner Vogels. 2007. Dynamo: Amazon’s highly available key-value store. ACM SIGOPS Operating Systems Review 41, 6 (2007), 205–220.
[25]
Mostafa Elhemali, Niall Gallagher, Nick Gordon, Joseph Idziorek, Richard Krog, Colin Lazier, Erben Mo, Akhilesh Mritunjai, Somasundaram Perianayagam, Tim Rath, Swami Sivasubramanian, James Christopher Sorenson III, Sroaj Sosothikul, Doug Terry, and Akshat Vig. 2022. Amazon DynamoDB: A scalable, predictably performant, and fully managed NoSQL database service. In 2022 USENIX Annual Technical Conference (USENIX ATC’22). USENIX Association, Carlsbad, CA, 1037–1048. https://www.usenix.org/conference/atc22/presentation/elhemali
[26]
Google.2023. 2023. Google Cloud. https://cloud.google.com/
[27]
Dongxu Huang, Qi Liu, Qiu Cui, Zhuhe Fang, Xiaoyu Ma, Fei Xu, Li Shen, Liu Tang, Yuxing Zhou, Menglong Huang, Wan Wei, Cong Liu, Jian Zhang, Jianjun Li, Xuelian Wu, Lingyu Song, Ruoxi Sun, Shuaipeng Yu, Lei Zhao, Nicholas Cameron, Liquan Pei, and Xin Tang. 2020. TiDB: A raft-based HTAP database. Proceedings of the VLDB Endowment 13, 12 (2020), 3072–3084.
[28]
Jaehyun Hwang, Midhul Vuppalapati, Simon Peter, and Rachit Agarwal. 2021. Rearchitecting Linux storage stack for µs latency and high throughput. In 15th USENIX Symposium on Operating Systems Design and Implementation (OSDI’21). USENIX Association, 113–128. https://www.usenix.org/conference/osdi21/presentation/hwang
[30]
Jens Axboe. 2022. Flexible I/O Tester. https://github.com/axboe/fio
[31]
Ram Kesavan, David Gay, Daniel Thevessen, Jimit Shah, and C. Mohan. 2023. Firestore: The NoSQL serverless database for the application developer. In 2023 IEEE 39th International Conference on Data Engineering (ICDE’23). 3367–3379.
[32]
Miryeong Kwon, Seungjun Lee, Hyunkyu Choi, Jooyoung Hwang, and Myoungsoo Jung. 2022. Vigil-KV: Hardware-software co-design to integrate strong latency determinism into log-structured merge key-value stores. In 2022 USENIX Annual Technical Conference (USENIX ATC’22). USENIX Association, Carlsbad, CA, 755–772. https://www.usenix.org/conference/atc22/presentation/kwon
[33]
Lucas Lersch, Ivan Schreter, Ismail Oukid, and Wolfgang Lehner. 2020. Enabling low tail latency on multicore key-value stores. Proc. VLDB Endow. 13, 7 (Mar. 2020), 1091–1104. DOI:
[34]
Junkai Liang and Yunpeng Chai. 2021. CruiseDB: An LSM-tree key-value store with both better tail throughput and tail latency. In 2021 IEEE 37th International Conference on Data Engineering (ICDE’21). IEEE, 1032–1043.
[35]
Mingzhe Liu, Haikun Liu, Chencheng Ye, Xiaofei Liao, Hai Jin, Yu Zhang, Ran Zheng, and Liting Hu. 2022. Towards low-latency I/O services for mixed workloads using ultra-low latency SSDs. In Proceedings of the 36th ACM International Conference on Supercomputing (ICS’22) (Virtual Event). Association for Computing Machinery, New York, NY, USA, Article 13, 12 pages. DOI:
[36]
Kai Lu, Nannan Zhao, Jiguang Wan, Changhong Fei, Wei Zhao, and Tongliang Deng. 2022. TridentKV: A read-optimized LSM-tree based KV store via adaptive indexing and space-efficient partitioning. IEEE Trans. Parallel Distributed Syst. 33, 8 (2022), 1953–1966. DOI:
[37]
Ricardo Macedo, Yusuke Tanimura, Jason Haga, Vijay Chidambaram, José Pereira, and João Paulo. 2022. PAIO: General, portable I/O optimizations with minor application modifications. In 20th USENIX Conference on File and Storage Technologies (FAST’22). USENIX Association, Santa Clara, CA, 413–428. https://www.usenix.org/conference/fast22/presentation/macedo
[39]
Harchol-Balter Mor. 2013. Performance Modeling and Design of Computer Systems. Vol. 576. Cambridge University Press.
[40]
M. Niranjanamurthy, U. L. Archana, K. T. Niveditha, S. Abdul Jafar, and N. S. Shravan. 2014. The research study on DynamoDB–NoSQL database service. Int. J. Comput. Sci. Mob. Comput. 3, 10 (2014), 268–279.
[41]
Feng-Feng Pan, Yin-Liang Yue, and Jin Xiong. 2017. dCompaction: Speeding up compaction of the LSM-tree via delayed compaction. Journal of Computer Science and Technology 32, 1 (2017), 41–54.
[42]
Ashwini Raina, Asaf Cidon, Kyle Jamieson, and Michael J. Freedman. 2020. PrismDB: Read-aware log-structured merge trees for heterogeneous storage. arXiv e-prints (2020), arXiv–2008.
[43]
Pandian Raju, Rohan Kadekodi, Vijay Chidambaram, and Ittai Abraham. 2017. PebblesDB: Building key-value stores using fragmented log-structured merge trees. In Proceedings of the 26th Symposium on Operating Systems Principles. 497–514.
[45]
Nicholas Joseph Ruta. 2017. CuttleTree: Adaptive Tuning for Optimized Log-structured Merge Trees. Ph. D. Dissertation.
[46]
Dejun Teng, Lei Guo, Rubao Lee, Feng Chen, Siyuan Ma, Yanfeng Zhang, and Xiaodong Zhang. 2017. LSbM-tree: Re-enabling buffer caching in data management for mixed reads and writes. In 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS’17). IEEE, 68–79.
[47]
Shucheng Wang, Ziyi Lu, Qiang Cao, Hong Jiang, Jie Yao, Yuanyuan Dong, and Puyuan Yang. 2020. BCW: Buffer-controlled writes to HDDs for SSD-HDD hybrid storage server. In 18th USENIX Conference on File and Storage Technologies (FAST’20). USENIX Association, Santa Clara, CA, 253–266. https://www.usenix.org/conference/fast20/presentation/wang-shucheng
[48]
Fenggang Wu, Ming-Hong Yang, Baoquan Zhang, and David H. C. Du. 2020. AC-Key: Adaptive caching for LSM-based key-value stores. In 2020 USENIX Annual Technical Conference (USENIX ATC’20). USENIX Association, 603–615. https://www.usenix.org/conference/atc20/presentation/wu-fenggang
[49]
Peng Xu, Nannan Zhao, Jiguang Wan, Wei Liu, Shuning Chen, Yuanhui Zhou, Hadeel Albahar, Hanyang Liu, Liu Tang, and Zhihu Tan. 2022. Building a fast and efficient LSM-tree store by integrating local storage with cloud storage. ACM Transactions on Architecture and Code Optimization (TACO) 19, 3 (2022), 1–26.
[50]
Lei Yang, Hong Wu, Tieying Zhang, Xuntao Cheng, Feifei Li, Lei Zou, Yujie Wang, Rongyao Chen, Jianying Wang, and Gui Huang. 2020. Leaper: A learned prefetcher for cache invalidation in LSM-Tree based storage engines. Proc. VLDB Endow. 13, 12 (Jul. 2020), 1976–1989. DOI:
[51]
Ting Yao, Jiguang Wan, Ping Huang, Xubin He, Qingxin Gui, Fei Wu, and Changsheng Xie. 2017. A light-weight compaction tree to reduce I/O amplification toward efficient key-value stores. In Proc. 33rd Int. Conf. Massive Storage Syst. Technol. (MSST). 1–13.
[52]
Hobin Yoon, Juncheng Yang, Sveinn Fannar Kristjansson, Steinn E. Sigurdarson, Ymir Vigfusson, and Ada Gavrilovska. 2018. Mutant: Balancing storage cost and latency in LSM-tree data stores. In Proceedings of the ACM Symposium on Cloud Computing (SoCC’18). 162–173.
[53]
Shuo Zhang, Guangping Xu, YuLei Jia, Yanbing Xue, and Wenguang Zheng. 2021. Parallel cache prefetching for LSM-tree based store: From algorithm to evaluation. In International Conference on Algorithms and Architectures for Parallel Processing. Springer, 222–236.
[54]
Teng Zhang, Jian Tan, Xin Cai, Jianying Wang, Feifei Li, and Jianling Sun. 2022. SA-LSM: Optimize data layout for LSM-tree based storage using survival analysis. Proc. VLDB Endow. 15, 10 (Jun. 2022), 2161–2174. DOI:

Cited By

View all
  • (2024)MS-PCQE: Efficient NR-PCQE via Multi-Scale Interaction Module in Immersive CommunicationsIEEE Transactions on Consumer Electronics10.1109/TCE.2024.342383070:3(5026-5039)Online publication date: 1-Aug-2024
  • (2024)Cloud Framework for Data Practitioners for Research and Higher Education CommunityAdvances on P2P, Parallel, Grid, Cloud and Internet Computing10.1007/978-3-031-76462-2_4(35-46)Online publication date: 17-Nov-2024

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Storage
ACM Transactions on Storage  Volume 20, Issue 2
May 2024
186 pages
EISSN:1553-3093
DOI:10.1145/3613586
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 April 2024
Online AM: 20 February 2024
Accepted: 26 January 2024
Revised: 16 January 2024
Received: 30 September 2023
Published in TOS Volume 20, Issue 2

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Cloud block storage
  2. log-structured merge tree
  3. storage cost
  4. tail latency

Qualifiers

  • Research-article

Funding Sources

  • National Key Research and Development Program of China
  • National Natural Science Foundation of China
  • Creative Research Group Project of NSFC
  • Key Research and Development Program of Guangdong Province

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)473
  • Downloads (Last 6 weeks)36
Reflects downloads up to 03 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2024)MS-PCQE: Efficient NR-PCQE via Multi-Scale Interaction Module in Immersive CommunicationsIEEE Transactions on Consumer Electronics10.1109/TCE.2024.342383070:3(5026-5039)Online publication date: 1-Aug-2024
  • (2024)Cloud Framework for Data Practitioners for Research and Higher Education CommunityAdvances on P2P, Parallel, Grid, Cloud and Internet Computing10.1007/978-3-031-76462-2_4(35-46)Online publication date: 17-Nov-2024

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Full Text

View this article in Full Text.

Full Text

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media