skip to main content
research-article

Kreon: An Efficient Memory-Mapped Key-Value Store for Flash Storage

Published:18 January 2021Publication History
Skip Abstract Section

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.

References

  1. Jung-Sang Ahn, Mohiuddin Abdul Qader, Woon-Hak Kang, Hieu Nguyen, Guogen Zhang, and Sami Ben-Romdhane. 2019. Jungle: Towards dynamically adjustable key-value store by combining LSM-tree and copy-on-write B+-tree. In Proceedings of the 11th USENIX Conference on Hot Topics in Storage and File Systems (HotStorage’19). USENIX Association, 9.Google ScholarGoogle Scholar
  2. Apache. 2018. HBase. Retrieved from https://hbase.apache.org/.Google ScholarGoogle Scholar
  3. Jens Axboe. 2017. Flexible I/O Tester. Retrieved from https://github.com/axboe.Google ScholarGoogle Scholar
  4. Jens Axboe. 2019. Efficient IO with io_uring. Retrieved from https://kernel.dk/io_uring.pdf.Google ScholarGoogle Scholar
  5. 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 Proceedings of the 2017 USENIX Conference on Usenix Annual Technical Conference (USENIX ATC’17). USENIX Association, Berkeley, CA, 363--375. http://dl.acm.org/citation.cfm?id=3154690.3154725.Google ScholarGoogle Scholar
  6. 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 Proceedings of the 2019 USENIX Conference on Usenix Annual Technical Conference (USENIX ATC’19). USENIX Association, 753--766.Google ScholarGoogle Scholar
  7. Nikos Batsaras, Giorgos Saloustros, Anastasios Papagiannis, Panagiota Fatourou, and Angelos Bilas. 2020. VAT: Asymptotic Cost Analysis for Multi-Level Key-Value Stores. arxiv:cs.DC/2003.00103Google ScholarGoogle Scholar
  8. Rudolf Bayer and Edward McCreight. 2002. Organization and Maintenance of Large Ordered Indexes. Springer.Google ScholarGoogle Scholar
  9. R. Bayer and M. Schkolnick. 1977. Concurrency of operations on B-trees. Acta Inf. 9, 1 (March 1977), 1--21. DOI:https://doi.org/10.1007/BF00263762Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Michael A. Bender, Martin Farach-Colton, William Jannen, Rob Johnson, Bradley C. Kuszmaul, Donald E. Porter, Jun Yuan, and Yang Zhan. 2015. An introduction to B–trees and write-optimization. Login: The USENIX Magazine 40, 5 (Oct. 2015), 22--28.Google ScholarGoogle Scholar
  11. Neal Bierbaum. 2002. MPI and embedded TCP/IP gigabit Ethernet cluster computing. In Proceedings of the 27th Annual IEEE Conference on Local Computer Networks (LCN’02). IEEE Computer Society, Washington, DC, 733--734. http://dl.acm.org/citation.cfm?id=648047.745852Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Philip Bohannon, Peter Mcllroy, and Rajeev Rastogi. 2001. Main-memory index structures with fixed-size partial keys. In Proceedings of the 2001 ACM SIGMOD International Conference on Management of Data (SIGMOD’01). ACM, New York, NY, 163--174. DOI:https://doi.org/10.1145/375663.375681Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Randal Burns and Wayne Hineman. 2001. A bit-parallel search algorithm for allocating free space. In Proceedings of the 9th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems, 2001. IEEE, 302--310.Google ScholarGoogle ScholarCross RefCross Ref
  14. Helen H. W. Chan, Yongkun Li, Patrick P. C. Lee, and Yinlong Xu. 2018. HashKV: Enabling efficient updates in KV storage via hashing. In Proceedings of the 2018 USENIX Conference on Usenix Annual Technical Conference (USENIX ATC’18). USENIX Association, Berkeley, CA, 1007--1019. http://dl.acm.org/citation.cfm?id=3277355.3277451Google ScholarGoogle Scholar
  15. Bernard Chazelle and Leonidas J. Guibas. 1986. Fractional cascading: I. A data structuring technique. Algorithmica 1, 1 (1986), 133--162.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Yanpei Chen, Sara Alspaugh, and Randy Katz. 2012. Interactive analytical processing in big data systems: A cross-industry study of mapreduce workloads. In Proceedings of the VLDB Endowment 5, 12 (2012), 1802--1813.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Youmin Chen, Youyou Lu, Fan Yang, Qing Wang, Yang Wang, and Jiwu Shu. 2020. FlatStore: An efficient log-structured key-value storage engine for persistent memory. In Proceedings of the 25th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS’20). ACM, New York, NY, 1077--1091. DOI:https://doi.org/10.1145/3373376.3378515Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Kristina Chodorow. 2013. MongoDB: The Definitive Guide (second ed.). O’Reilly Media. Retrieved from http://amazon.com/o/ASIN/1449344682/.Google ScholarGoogle Scholar
  19. Jungsik Choi, Jiwon Kim, and Hwansoo Han. 2017. Efficient memory mapped file I/O for in-memory file systems. In Proceedings of the 9th USENIX Workshop on Hot Topics in Storage and File Systems (HotStorage 17). USENIX Association, Santa Clara, CA. https://www.usenix.org/conference/hotstorage17/program/presentation/choi.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Austin T. Clements, M. Frans Kaashoek, and Nickolai Zeldovich. 2012. Scalable address spaces using RCU balanced trees. In Proceedings of the Seventeenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS XVII). Association for Computing Machinery, New York, NY, 199--210. DOI:https://doi.org/10.1145/2150976.2150998Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Brian F. Cooper. 2018. Core Workloads. Retrieved from https://github.com/brianfrankcooper/YCSB/wiki/Core-Workloads.Google ScholarGoogle Scholar
  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). ACM, New York, NY, 143--154. DOI:https://doi.org/10.1145/1807128.1807152Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Niv Dayan, Manos Athanassoulis, and Stratos Idreos. 2017. Monkey: Optimal navigable key-value store. In Proceedings of the 2017 ACM International Conference on Management of Data (SIGMOD’17). ACM, New York, NY, 79--94. DOI:https://doi.org/10.1145/3035918.3064054Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. 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 (SIGMOD’18). ACM, New York, NY, 505--520. DOI:https://doi.org/10.1145/3183713.3196927Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. 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.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Siying Dong, Mark Callaghan, Leonidas Galanis, Dhruba Borthakur, Tony Savor, and Michael Strum. 2017. Optimizing space amplification in RocksDB. In CIDR 2017, 8th Biennial Conference on Innovative Data Systems Research, Chaminade, CA, January 8-11, 2017, Online Proceedings. www.cidrdb.org. http://cidrdb.org/cidr2017/papers/p82-dong-cidr17.pdf.Google ScholarGoogle Scholar
  27. Aleksandar Dragojević, Dushyanth Narayanan, Orion Hodson, and Miguel Castro. 2014. FaRM: Fast remote memory. In Proceedings of the 11th USENIX Conference on Networked Systems Design and Implementation. 401--414.Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Brian Essen, Henry Hsieh, Sasha Ames, Roger Pearce, and Maya Gokhale. 2015. DI-MMAP–A scalable memory-map runtime for out-of-core data-intensive applications. Cluster Computing 18, 1 (March 2015), 15--28. DOI:https://doi.org/10.1007/s10586-013-0309-0Google ScholarGoogle Scholar
  29. Jason Evans. 2018. jemalloc. Retrieved from http://jemalloc.net/.Google ScholarGoogle Scholar
  30. Facebook. 2015. RocksDB Performance Benchmarks. Retrieved from https://github.com/facebook/rocksdb/wiki/Performance-Benchmarks.Google ScholarGoogle Scholar
  31. Facebook. 2018. RocksDB. Retrieved from http://rocksdb.org/.Google ScholarGoogle Scholar
  32. 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 (EuroSys’15). ACM, New York, NY, Article 32, 14 pages. DOI:https://doi.org/10.1145/2741948.2741973Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Pilar González-Férez and Angelos Bilas. 2014. Tyche: An efficient Ethernet-based protocol for converged networked storage. In Proceedings of the IEEE Conference on Massive Storage Systems and Technology (MSST).Google ScholarGoogle ScholarCross RefCross Ref
  34. Google. 2018. LevelDB. Retrieved from http://leveldb.org/.Google ScholarGoogle Scholar
  35. Goetz Graefe. 2004. Write-optimized B-trees. In Proceedings of the 30th International Conference on Very Large Data Bases - Volume 30 (VLDB’04). VLDB Endowment, 672--683. http://dl.acm.org/citation.cfm?id=1316689.1316748Google ScholarGoogle Scholar
  36. Goetz Graefe, Hideaki Kimura, and Harumi Kuno. 2012. Foster B-trees. ACM Transactions on Database Systems 37, 3, Article Article 17 (Sept. 2012), 29 pages. DOI:https://doi.org/10.1145/2338626.2338630Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Brendan Gregg. 2016. The flame graph. Queue 14, 2, Article 10 (March 2016), 20 pages. DOI:https://doi.org/10.1145/2927299.2927301Google ScholarGoogle Scholar
  38. Stavros Harizopoulos, Daniel J. Abadi, Samuel Madden, and Michael Stonebraker. 2008. OLTP through the looking glass, and what we found there. In Proceedings of the 2008 ACM SIGMOD International Conference on Management of Data (SIGMOD’08). ACM, New York, NY, 981--992. DOI:https://doi.org/10.1145/1376616.1376713Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Stratos Idreos, Fabian Groffen, Niels Nes, Stefan Manegold, Sjoerd Mullender, Martin Kersten, et al. 2012. MonetDB: Two decades of research in column-oriented database architectures. A Quarterly Bulletin of the IEEE Computer Society Technical Committee on Database Engineering 35, 1 (2012), 40--45.Google ScholarGoogle Scholar
  40. H. V. Jagadish, P. P. S. Narayan, S. Seshadri, S. Sudarshan, and Rama Kanneganti. 1997. Incremental organization for data recording and warehousing. In Proceedings of the 23rd International Conference on Very Large Data Bases (VLDB’97). Morgan Kaufmann Publishers Inc., San Francisco, CA, 16--25. http://dl.acm.org/citation.cfm?id=645923.671013Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. William Jannen, Jun Yuan, Yang Zhan, Amogh Akshintala, John Esmet, Yizheng Jiao, Ankur Mittal, Prashant Pandey, Phaneendra Reddy, Leif Walsh, Michael Bender, Martin Farach-Colton, Rob Johnson, Bradley C. Kuszmaul, and Donald E. Porter. 2015. BetrFS: A right-optimized write-optimized file system. In Proceedings of the 13th USENIX Conference on File and Storage Technologies (FAST 15). USENIX Association, Santa Clara, CA, 301--315. https://www.usenix.org/conference/fast15/technical-sessions/presentation/jannen.Google ScholarGoogle Scholar
  42. Jan Jannink. 1995. Implementing deletion in B+-trees. SIGMOD Record 24, 1 (March 1995), 33--38. DOI:https://doi.org/10.1145/202660.202666Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Jithin Jose, Hari Subramoni, Miao Luo, Minjia Zhang, Jian Huang, Md. Wasi-ur Rahman, Nusrat S. Islam, Xiangyong Ouyang, Hao Wang, Sayantan Sur, and Dhabaleswar K. Panda. 2011. Memcached design on high performance RDMA capable interconnects. In Proceedings of the 2011 International Conference on Parallel Processing. 743--752.Google ScholarGoogle Scholar
  44. Anuj Kalia, Michael Kaminsky, and David G. Andersen. 2014. Using RDMA efficiently for key-value services. SIGCOMM Computer Communications Review 44, 4 (Aug. 2014), 295--306.Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Anuj Kalia, Michael Kaminsky, and David G. Andersen. 2016. Design guidelines for high performance RDMA systems. In Proceedings of the 2016 USENIX Conference on Usenix Annual Technical Conference. 437--450.Google ScholarGoogle Scholar
  46. Sudarsun Kannan, Nitish Bhat, Ada Gavrilovska, Andrea Arpaci-Dusseau, and Remzi Arpaci-Dusseau. 2018. Redesigning LSMs for nonvolatile memory with NoveLSM. In Proceedings of the 2018 USENIX Conference on Usenix Annual Technical Conference (USENIX ATC’18). USENIX Association, Berkeley, CA, 993--1005. http://dl.acm.org/citation.cfm?id=3277355.3277450Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Bradley Kuszmaul. 2014. A comparison of fractal trees to log-structured merge (LSM) trees. White Paper (2014).Google ScholarGoogle Scholar
  48. Chunbo Lai, Song Jiang, Liqiong Yang, Shiding Lin, Guangyu Sun, Zhenyu Hou, Can Cui, and Jason Cong. 2015. Atlas: Baidu’s key-value storage system for cloud data. In MSST. IEEE Computer Society, 1--14. http://dblp.uni-trier.de/db/conf/mss/msst2015.html#LaiJYLSHCC15.Google ScholarGoogle Scholar
  49. Leslie Lamport. 1977. Concurrent reading and writing. Communications ACM 20, 11 (1977), 806--811.Google ScholarGoogle ScholarDigital LibraryDigital Library
  50. Baptiste Lepers, Oana Balmau, Karan Gupta, and Willy Zwaenepoel. 2019. KVell: The design and implementation of a fast persistent key-value store. In Proceedings of the 27th ACM Symposium on Operating Systems Principles (SOSP’19). Association for Computing Machinery, New York, NY, 447--461. DOI:https://doi.org/10.1145/3341301.3359628Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. Bojie Li, Zhenyuan Ruan, Wencong Xiao, Yuanwei Lu, Yongqiang Xiong, Andrew Putnam, Enhong Chen, and Lintao Zhang. 2017. KV-direct: High-performance in-memory key-value store with programmable NIC. In Proceedings of the 26th Symposium on Operating Systems Principles (SOSP’17). ACM, New York, NY, 137--152. DOI:https://doi.org/10.1145/3132747.3132756Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Y. Li, B. He, Q. Luo, and K. Yi. 2009. Tree indexing on flash disks. In Proceedings of the 2009 IEEE 25th International Conference on Data Engineering. 1303--1306. DOI:https://doi.org/10.1109/ICDE.2009.226Google ScholarGoogle Scholar
  53. Pejman Lotfi-Kamran, Boris Grot, Michael Ferdman, Stavros Volos, Onur Kocberber, Javier Picorel, Almutaz Adileh, Djordje Jevdjic, Sachin Idgunji, Emre Ozer, and Babak Falsafi. 2012. Scale-out processors. In Proceedings of the 39th Annual International Symposium on Computer Architecture (ISCA’12). IEEE Computer Society, Washington, DC, 500--511. http://dl.acm.org/citation.cfm?id=2337159.2337217Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. 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). USENIX Association, Santa Clara, CA, 133--148. https://www.usenix.org/conference/fast16/technical-sessions/presentation/lu.Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. Ilias Marinos, Robert N. M. Watson, and Mark Handley. 2014. Network stack specialization for performance. SIGCOMM Computer Communication Review 44, 4 (Aug. 2014), 175--186. DOI:https://doi.org/10.1145/2740070.2626311Google ScholarGoogle ScholarDigital LibraryDigital Library
  56. Fei Mei, Qiang Cao, Hong Jiang, and Jingjun Li. 2018. SifrDB: A unified solution for write-optimized key-value stores in large datacenter. In Proceedings of the ACM Symposium on Cloud Computing (SoCC’18). ACM, New York, NY, 477--489. DOI:https://doi.org/10.1145/3267809.3267829Google ScholarGoogle ScholarDigital LibraryDigital Library
  57. Christopher Mitchell, Yifeng Geng, and Jinyang Li. 2013. Using one-sided RDMA reads to build a fast, CPU-efficient key-value store. In Proceedings of the 2013 USENIX Conference on Annual Technical Conference. 103--114.Google ScholarGoogle ScholarDigital LibraryDigital Library
  58. MongoDB. 2019. MongoRocks. Retrieved from https://github.com/mongodb-partners/mongo-rocks.Google ScholarGoogle Scholar
  59. Michael A. Olson, Keith Bostic, and Margo Seltzer. 1999. Berkeley DB. In Proceedings of the Annual Conference on USENIX Annual Technical Conference (ATEC’99). USENIX Association, Berkeley, CA, 43--43. http://dl.acm.org/citation.cfm?id=1268708.1268751Google ScholarGoogle Scholar
  60. Patrick O’Neil, Edward Cheng, Dieter Gawlick, and Elizabeth O’Neil. 1996. The log-structured merge-tree (LSM-tree). Acta Informatica 33, 4 (1996), 351--385.Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Anastasios Papagiannis, Giorgos Saloustros, Pilar González-Férez, and Angelos Bilas. 2016. Tucana: Design and implementation of a fast and efficient scale-up key-value store. In Proceedings of the 2016 USENIX Annual Technical Conference (USENIX ATC 16). USENIX Association, Denver, CO, 537--550. https://www.usenix.org/conference/atc16/technical-sessions/presentation/papagiannis.Google ScholarGoogle Scholar
  62. Anastasios Papagiannis, Giorgos Saloustros, Pilar González-Férez, and Angelos Bilas. 2018. An efficient memory-mapped key-value store for flash storage. In Proceedings of the ACM Symposium on Cloud Computing (SoCC’18). Association for Computing Machinery, New York, NY, 490--502. DOI:https://doi.org/10.1145/3267809.3267824Google ScholarGoogle ScholarDigital LibraryDigital Library
  63. Anastasios Papagiannis, Giorgos Xanthakis, Giorgos Saloustros, Manolis Marazakis, and Angelos Bilas. 2020. Optimizing memory-mapped I/O for fast storage devices. In Proceedings of the 2020 USENIX Annual Technical Conference (USENIX ATC 20). USENIX Association, 813--827. https://www.usenix.org/conference/atc20/presentation/papagiannis.Google ScholarGoogle Scholar
  64. 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 (SOSP’17). ACM, New York, NY, 497--514. DOI:https://doi.org/10.1145/3132747.3132765Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Jinglei Ren. 2016. YCSB-C. Retrieved from https://github.com/basicthinker/YCSB-C.Google ScholarGoogle Scholar
  66. Ohad Rodeh. 2008. B-trees, shadowing, and clones. Trans. Storage 3, 4, Article 2 (Feb. 2008), 27 pages. DOI:https://doi.org/10.1145/1326542.1326544Google ScholarGoogle ScholarDigital LibraryDigital Library
  67. Allen Samuels. 2018. The Consequences of Infinite Storage Bandwidth. Retrieved from https://goo.gl/Xfo7Lu.Google ScholarGoogle Scholar
  68. 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 (SIGMOD’12). ACM, New York, NY, 217--228. DOI:https://doi.org/10.1145/2213836.2213862Google ScholarGoogle ScholarDigital LibraryDigital Library
  69. 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 Proceedings of the 11th USENIX Conference on File and Storage Technologies (FAST 13). USENIX, San Jose, CA, 17--30. https://www.usenix.org/conference/fast13/technical-sessions/presentation/shetty.Google ScholarGoogle ScholarDigital LibraryDigital Library
  70. Nae Young Song, Yongseok Son, Hyuck Han, and Heon Young Yeom. 2016. Efficient memory-mapped I/O on fast storage device. ACM Transactions on Storage 12, 4, Article 19 (May 2016), 27 pages. DOI:https://doi.org/10.1145/2846100Google ScholarGoogle ScholarDigital LibraryDigital Library
  71. Maomeng Su, Mingxing Zhang, Kang Chen, Zhenyu Guo, and Yongwei Wu. 2017. RFP: When RPC is faster than server-bypass with RDMA. In Proceedings of the 12th European Conference on Computer Systems (EuroSys’17). ACM, New York, NY, 1--15. DOI:https://doi.org/10.1145/3064176.3064189Google ScholarGoogle ScholarDigital LibraryDigital Library
  72. INC TOKUTEK. 2013. TokuDB: MySQL Performance, MariaDB Performance.Google ScholarGoogle Scholar
  73. 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 (EuroSys’14). ACM, New York, NY, Article 16, 14 pages. DOI:https://doi.org/10.1145/2592798.2592804Google ScholarGoogle ScholarDigital LibraryDigital Library
  74. Yandong Wang, Li Zhang, Jian Tan, Min Li, Yuqing Gao, Xavier Guerin, Xiaoqiao Meng, and Shicong Meng. 2015. HydraDB: A resilient RDMA-driven key-value middleware for in-memory cluster computing. In Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis (SC’15). ACM, New York, NY, Article 22, 11 pages. DOI:https://doi.org/10.1145/2807591.2807614Google ScholarGoogle ScholarDigital LibraryDigital Library
  75. Xingda Wei, Jiaxin Shi, Yanzhe Chen, Rong Chen, and Haibo Chen. 2015. Fast in-memory transaction processing using RDMA and HTM. In Proceedings of the 25th Symposium on Operating Systems Principles. 87--104.Google ScholarGoogle ScholarDigital LibraryDigital Library
  76. Xingbo Wu, Yuehai Xu, Zili Shao, and Song Jiang. 2015. LSM-trie: An LSM-tree-based ultra-large key-value store for small data items. In Proceedings of the 2015 USENIX Annual Technical Conference (USENIX ATC 15). USENIX Association, Santa Clara, CA, 71--82. https://www.usenix.org/conference/atc15/technical-session/presentation/wu.Google ScholarGoogle ScholarDigital LibraryDigital Library
  77. 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). ACM, New York, NY, 162--173. DOI:https://doi.org/10.1145/3267809.3267846Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Kreon: An Efficient Memory-Mapped Key-Value Store for Flash Storage

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          • Published in

            cover image ACM Transactions on Storage
            ACM Transactions on Storage  Volume 17, Issue 1
            Special Section on Usenix Fast 2020
            February 2021
            165 pages
            ISSN:1553-3077
            EISSN:1553-3093
            DOI:10.1145/3446939
            • Editor:
            • Sam H. Noh
            Issue’s Table of Contents

            Copyright © 2021 ACM

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 18 January 2021
            • Accepted: 1 August 2020
            • Revised: 1 May 2020
            • Received: 1 January 2020
            Published in tos Volume 17, Issue 1

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article
            • Research
            • Refereed

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader

          HTML Format

          View this article in HTML Format .

          View HTML Format
          About Cookies On This Site

          We use cookies to ensure that we give you the best experience on our website.

          Learn more

          Got it!