Skip to main content

ACEKV: An In-Memory Key-Value Store with Optimized Cuckoo Insertion

  • Conference paper
  • First Online:
Database Systems for Advanced Applications (DASFAA 2024)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 14850))

Included in the following conference series:

  • 725 Accesses

Abstract

In-memory key-value stores (IMKVs) are essential for large-scale web applications, providing rapid data access with low latency and high throughput. They typically adopt hash tables as the index data structure for fast data retrieval. As new items are continuously inserted into IMKVs, the index insertion of these items incurs a rising number of hash collisions, which in turn adversely affects the system’s performance. Although current IMKVs adopt various policies to mitigate hash collisions and avoid endless loops of reinsertion, they still suffer from high insertion latency and degraded performance. This paper presents ACEKV, an in-memory key-value store that leverages a cuckoo hash table optimized for efficient hash insertions. It proposes a kickCounter algorithm that prioritizes selecting a cuckoo path with infrequent access, which enables hash indexes to be evenly distributed in the hash table and effectively reduces the average length of the cuckoo path. Evaluation results show that the holistic design of ACEKV significantly enhances insertion efficiency and consistently achieves high performance under various workloads.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

References

  1. Cao, Z., Dong, S., Vemuri, S., Du, D.H.: Characterizing, modeling, and benchmarking \(\{\)RocksDB\(\}\)\(\{\)Key-Value\(\}\) workloads at Facebook. In: 18th USENIX Conference on File and Storage Technologies, FAST 2020, pp. 209–223 (2020)

    Google Scholar 

  2. Cidon, A., Rushton, D., Rumble, S.M., Stutsman, R.: Memshare: a dynamic multi-tenant key-value cache. In: Da Silva, D., Ford, B. (eds.) 2017 USENIX Annual Technical Conference, USENIX ATC 2017, Santa Clara, CA, USA, 12–14 July 2017, pp. 321–334. USENIX Association (2017)

    Google Scholar 

  3. Cooper, B.F., Silberstein, A., Tam, E., Ramakrishnan, R., Sears, R.: Benchmarking cloud serving systems with YCSB. In: Proceedings of the 1st ACM Symposium on Cloud Computing, pp. 143–154 (2010)

    Google Scholar 

  4. Debnath, B., Sengupta, S., Li, J.: FlashStore: high throughput persistent key-value store. Proc. VLDB Endow. 3(1–2), 1414–1425 (2010)

    Article  Google Scholar 

  5. Erlingsson, U., Manasse, M., McSherry, F.: A cool and practical alternative to traditional hash tables. In: Proceedings of the 7th Workshop on Distributed Data and Structures, WDAS 2006 (2006)

    Google Scholar 

  6. Fan, B., Andersen, D.G., Kaminsky, M.: MemC3: compact and concurrent MemCache with dumber caching and smarter hashing. In: 10th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2013, Lombard, IL, April 2013, pp. 371–384. USENIX Association (2013)

    Google Scholar 

  7. Frieze, A., Melsted, P., Mitzenmacher, M.: An analysis of random-walk cuckoo hashing. In: Dinur, I., Jansen, K., Naor, J., Rolim, J. (eds.) APPROX/RANDOM -2009. LNCS, vol. 5687, pp. 490–503. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-03685-9_37

    Chapter  Google Scholar 

  8. Intel. DPDK 2023 (2023)

    Google Scholar 

  9. Li, X., Andersen, D.G., Kaminsky, M., Freedman, M.J.: Algorithmic improvements for fast concurrent cuckoo hashing. In: Proceedings of the Ninth European Conference on Computer Systems, pp. 1–14 (2014)

    Google Scholar 

  10. Lim, H., Han, D., Andersen, D.G., Kaminsky, M.: MICA: a holistic approach to fast in-memory key-value storage. In: 11th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2014, Seattle, WA, April 2014, pp. 429–444. USENIX Association (2014)

    Google Scholar 

  11. Memcached: Memcached (2023)

    Google Scholar 

  12. Rasmus Pagh and Flemming Friche Rodler: Cuckoo hashing. J. Algorithms 51(2), 122–144 (2004)

    Article  MathSciNet  Google Scholar 

  13. Yuanyuan Sun, Yu., Hua, D.F., Yang, L., Zuo, P., Cao, S., Guo, Y.: A collision-mitigation cuckoo hashing scheme for large-scale storage systems. IEEE Trans. Parallel Distrib. Syst. 28(3), 619–632 (2016)

    Google Scholar 

  14. Sun, Y., Hua, Y., Jiang, S., Li, Q., Cao, S., Zuo, P.: \(\{\)SmartCuckoo\(\}\): a fast and \(\{\)Cost-Efficient\(\}\) hashing index scheme for cloud storage systems. In: 2017 USENIX Annual Technical Conference, USENIX ATC 2017, pp. 553–565 (2017)

    Google Scholar 

  15. Yang, J., Yue, Y., Rashmi, K.V.: A large scale analysis of hundreds of in-memory cache clusters at Twitter. In: 14th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2020, pp. 191–208 (2020)

    Google Scholar 

  16. Yang, J., Yue, Y., Vinayak, R.: Segcache: a memory-efficient and scalable in-memory key-value cache for small objects. In: 18th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2021, pp. 503–518 (2021)

    Google Scholar 

  17. Yusuf, A.D., Abdullahi, S., Boukar, M.M., Yusuf, S.I.: Collision resolution techniques in hash table: a review. Int. J. Adv. Comput. Sci. Appl. 12(9), 757–762 (2021)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kai Zhang .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2024 The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd.

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Xiao, H., Bao, W., Zhang, K., He, Z., Jing, Y., Wang, X.S. (2024). ACEKV: An In-Memory Key-Value Store with Optimized Cuckoo Insertion. In: Onizuka, M., et al. Database Systems for Advanced Applications. DASFAA 2024. Lecture Notes in Computer Science, vol 14850. Springer, Singapore. https://doi.org/10.1007/978-981-97-5552-3_23

Download citation

  • DOI: https://doi.org/10.1007/978-981-97-5552-3_23

  • Published:

  • Publisher Name: Springer, Singapore

  • Print ISBN: 978-981-97-5551-6

  • Online ISBN: 978-981-97-5552-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics