[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
research-article
Public Access

A Low-cost Disk Solution Enabling LSM-tree to Achieve High Performance for Mixed Read/Write Workloads

Published: 12 April 2018 Publication History

Abstract

LSM-tree has been widely used in data management production systems for write-intensive workloads. However, as read and write workloads co-exist under LSM-tree, data accesses can experience long latency and low throughput due to the interferences to buffer caching from the compaction, a major and frequent operation in LSM-tree. After a compaction, the existing data blocks are reorganized and written to other locations on disks. As a result, the related data blocks that have been loaded in the buffer cache are invalidated since their referencing addresses are changed, causing serious performance degradations.
To re-enable high-speed buffer caching during intensive writes, we propose Log-Structured buffered-Merge tree (simplified as LSbM-tree) by adding a compaction buffer on disks to minimize the cache invalidations on buffer cache caused by compactions. The compaction buffer efficiently and adaptively maintains the frequently visited datasets. In LSbM, strong locality objects can be effectively kept in the buffer cache with minimum or no harmful invalidations. With the help of a small on-disk compaction buffer, LSbM achieves a high query performance by enabling effective buffer caching, while retaining all the merits of LSM-tree for write-intensive data processing and providing high bandwidth of disks for range queries. We have implemented LSbM based on LevelDB. We show that with a standard buffer cache and a hard disk, LSbM can achieve 2x performance improvement over LevelDB. We have also compared LSbM with other existing solutions to show its strong cache effectiveness.

References

[1]
Muhammad Yousuf Ahmad and Bettina Kemme. 2015. Compaction management in distributed key-value datastores. Proc. VLDB Endow. 8, 8 (2015), 850--861.
[2]
Apache. 2017. Cassandra. Retrieved April 6, 2017 from http://cassandra.apache.org/.
[3]
Apache. 2017. HBASE. Retrieved April 6, 2017 from https://hbase.apache.org/.
[4]
Berk Atikoglu, Yuehai Xu, Eitan Frachtenberg, Song Jiang, and Mike Paleczny. 2012. Workload analysis of a large-scale key-value store. In ACM SIGMETRICS Performance Evaluation Review, Vol. 40. ACM, 53--64.
[5]
Basho. 2017. Riak. Retrieved April 6, 2017from http://basho.com/riak.
[6]
Andrei Broder and Michael Mitzenmacher. 2004. Network applications of bloom filters: A survey. Internet Math. 1, 4 (2004), 485--509.
[7]
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 Trans. Comput. Syst. 26, 2 (2008), 4.
[8]
Feng Chen, Rubao Lee, and Xiaodong Zhang. 2011. Essential roles of exploiting internal parallelism of flash memory based solid state drives in high-speed data processing. In Proceedings of the 2011 IEEE 17th International Symposium on High Performance Computer Architecture (HPCA’11). IEEE, 266--277.
[9]
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. ACM, 143--154.
[10]
Facebook. 2017. RocksDB. Retrieved April 6, 2017 from http://rocksdb.org/.
[11]
Guy Golan-Gueta, Edward Bortnikov, Eshcar Hillel, and Idit Keidar. 2015. Scaling concurrent log-structured data stores. In Proceedings of the 10th European Conference on Computer Systems. ACM, 32.
[12]
Google. 2017. LevelDB. Retrieved April 6, 2017 from http://code.google.com/p/leveldb.
[13]
Lei Guo, Dejun Teng, Rubao Lee, Feng Chen, Siyuan Ma, and Xiaodong Zhang. 2016. Re-enabling high-speed caching for LSM-trees. arXiv preprint arXiv:1606.02015 (2016).
[14]
H. V. Jagadish, P. P. S. Narayan, Sridhar Seshadri, S. Sudarshan, and Rama Kanneganti. 1997. Incremental organization for data recording and warehousing. In VLDB, Vol. 97. Citeseer, 16--25.
[15]
Yinan Li, Bingsheng He, Robin Jun Yang, Qiong Luo, and Ke Yi. 2010. Tree indexing on solid state drives. Proc. VLDB Endow. 3, 1-2 (2010), 1195--1206.
[16]
Hyeontaek Lim, David G. Andersen, and Michael Kaminsky. 2016. Towards accurate and fast evaluation of multi-stage log-structured designs. In Proceedings of the 14th USENIX Conference on File and Storage Technologies (FAST’16). USENIX Association, 149--166.
[17]
Lanyue Lu, Thanumalayan Sankaranarayana Pillai, Andrea C. Arpaci-Dusseau, and Remzi H. Arpaci-Dusseau. 2016. WiscKey: Separating keys from values in SSD-conscious storage. In Proceedings of the 14th USENIX Conference on File and Storage Technologies (FAST’16). 133--148.
[18]
Ryan Mcguire. 2014. Compaction Improvements in Cassandra 2.1. April 6, 2014 from http://www.datastax.com/dev/blog/compaction-improvements-in-cassandra-21.
[19]
Patrick ONeil, Edward Cheng, Dieter Gawlick, and Elizabeth ONeil. 1996. The log-structured merge-tree (LSM-tree). Acta Inform. 33, 4 (1996), 351--385.
[20]
Russell Sears and Raghu Ramakrishnan. 2012. bLSM: A general purpose log structured merge tree. In Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data. ACM, 217--228.
[21]
Pradeep J. Shetty, Richard P. Spillane, Ravikant R. Malpani, Binesh Andrews, Justin Seyster, and Erez Zadok. 2013. Building workload-independent storage with VT-trees. In Presented as part of the Proceedings of the 11th USENIX Conference on File and Storage Technologies (FAST’13). 17--30.
[22]
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 Proceedings of the 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS’17). IEEE, 68--79.
[23]
Peng Wang, Guangyu Sun, Song Jiang, Jian Ouyang, Shiding Lin, Chen Zhang, and Jason Cong. 2014. An efficient design and implementation of LSM-tree based key-value store on open-channel SSD. In Proceedings of the 9th European Conference on Computer Systems. ACM, 16.
[24]
Xingbo Wu, Yuehai Xu, Zili Shao, and Song Jiang. 2015. LSM-trie: An LSM-tree-based ultra-large key-value store for small data. In Proceedings of the 2015 USENIX Conference on Usenix Annual Technical Conference. USENIX Association, 71--82.
[25]
Kai Zhang, Kaibo Wang, Yuan Yuan, Lei Guo, Rubao Lee, and Xiaodong Zhang. 2015. Mega-kv: A case for GPUS to maximize the throughput of in-memory key-value stores. Proc. VLDB Endow. 8, 11 (2015), 1226--1237.

Cited By

View all
  • (2024)Range Cache: An Efficient Cache Component for Accelerating Range Queries on LSM - Based Key-Value Stores2024 IEEE 40th International Conference on Data Engineering (ICDE)10.1109/ICDE60146.2024.00044(488-500)Online publication date: 13-May-2024
  • (2023)The Design and Implementation of UniKV for Mixed Key-Value Storage WorkloadsIEEE Transactions on Knowledge and Data Engineering10.1109/TKDE.2023.323451035:11(11935-11949)Online publication date: 1-Nov-2023
  • (2022)Bi-directional Log-Structured Merge TreeProceedings of the 34th International Conference on Scientific and Statistical Database Management10.1145/3538712.3538730(1-4)Online publication date: 6-Jul-2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Transactions on Storage
ACM Transactions on Storage  Volume 14, Issue 2
May 2018
210 pages
ISSN:1553-3077
EISSN:1553-3093
DOI:10.1145/3208078
  • Editor:
  • Sam H. Noh
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 12 April 2018
Accepted: 01 November 2017
Revised: 01 November 2017
Received: 01 April 2017
Published in TOS Volume 14, Issue 2

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. LSM-tree
  2. buffer cache
  3. compaction

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

  • OCI
  • CNS
  • CCF

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)276
  • Downloads (Last 6 weeks)41
Reflects downloads up to 11 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Range Cache: An Efficient Cache Component for Accelerating Range Queries on LSM - Based Key-Value Stores2024 IEEE 40th International Conference on Data Engineering (ICDE)10.1109/ICDE60146.2024.00044(488-500)Online publication date: 13-May-2024
  • (2023)The Design and Implementation of UniKV for Mixed Key-Value Storage WorkloadsIEEE Transactions on Knowledge and Data Engineering10.1109/TKDE.2023.323451035:11(11935-11949)Online publication date: 1-Nov-2023
  • (2022)Bi-directional Log-Structured Merge TreeProceedings of the 34th International Conference on Scientific and Statistical Database Management10.1145/3538712.3538730(1-4)Online publication date: 6-Jul-2022
  • (2021)Constructing and analyzing the LSM compaction design spaceProceedings of the VLDB Endowment10.14778/3476249.347627414:11(2216-2229)Online publication date: 27-Oct-2021
  • (2021)Unifying the data center caching layerProceedings of the 13th ACM Workshop on Hot Topics in Storage and File Systems10.1145/3465332.3470884(50-57)Online publication date: 27-Jul-2021
  • (2019)Enabling Efficient Updates in KV Storage via HashingACM Transactions on Storage10.1145/334028715:3(1-29)Online publication date: 13-Aug-2019
  • (2019)Indexing in flash storage devices: a survey on challenges, current approaches, and future trendsThe VLDB Journal10.1007/s00778-019-00559-8Online publication date: 3-Aug-2019

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Full Access

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media