skip to main content
10.1145/2619239.2626299acmconferencesArticle/Chapter ViewAbstractPublication PagescommConference Proceedingsconference-collections
research-article
Open Access

Using RDMA efficiently for key-value services

Published:17 August 2014Publication History

ABSTRACT

This paper describes the design and implementation of HERD, a key-value system designed to make the best use of an RDMA network. Unlike prior RDMA-based key-value systems, HERD focuses its design on reducing network round trips while using efficient RDMA primitives; the result is substantially lower latency, and throughput that saturates modern, commodity RDMA hardware.

HERD has two unconventional decisions: First, it does not use RDMA reads, despite the allure of operations that bypass the remote CPU entirely. Second, it uses a mix of RDMA and messaging verbs, despite the conventional wisdom that the messaging primitives are slow. A HERD client writes its request into the server's memory; the server computes the reply. This design uses a single round trip for all requests and supports up to 26 million key-value operations per second with 5μs average latency. Notably, for small key-value items, our full system throughput is similar to native RDMA read throughput and is over 2X higher than recent RDMA-based key-value systems. We believe that HERD further serves as an effective template for the construction of RDMA-based datacenter services.

References

  1. Connect-IB: Architecture for Scalable High Performance Computing. URL http://www.mellanox.com/related-docs/applications/SB_Connect-IB.pdf.Google ScholarGoogle Scholar
  2. Intel DPDK: Data Plane Development Kit. URL http://dpdk.org.Google ScholarGoogle Scholar
  3. Intel 82599 10 Gigabit Ethernet Controller: Datasheet. URL http://www.intel.com/content/www/us/en/ethernet-controllers/82599-10-gbe-controller-datasheet.html.Google ScholarGoogle Scholar
  4. Redis: An Advanced Key-Value Store. URL http://redis.io.Google ScholarGoogle Scholar
  5. memcached: A Distributed Memory Object Caching System, 2011. URL http://memcached.org.Google ScholarGoogle Scholar
  6. B. Atikoglu, Y. Xu, E. Frachtenberg, S. Jiang, and M. Paleczny. Workload Analysis of a Large-Scale Key-Value Store. In SIGMETRICS, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. B. F. Cooper, A. Silberstein, E. Tam, R. Ramakrishnan, and R. Sears. Benchmarking Cloud Serving Systems with YCSB. In SoCC, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. A. Dragojevic, D. Narayanan, O. Hodson, and M. Castro. FaRM: Fast Remote Memory. In USENIX NSDI, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. B. Fan, D. G. Andersen, and M. Kaminsky. MemC3: Compact and Concurrent MemCache with Dumber Caching and Smarter Hashing. In USENIX NSDI, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. M. Flajslik and M. Rosenblum. Network Interface Design for Low Latency Request-Response Protocols. In USENIX ATC, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. G. Gibson, G. Grider, A. Jacobson, and W. Lloyd. PRObE: A Thousand-Node Experimental Cluster for Computer Systems Research.Google ScholarGoogle Scholar
  12. M. Herlihy, N. Shavit, and M. Tzafrir. Hopscotch Hashing. In DISC, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. J. Huang, X. Ouyang, J. Jose, M. W. ur Rahman, H. Wang, M. Luo, H. Subramoni, C. Murthy, and D. K. Panda. High-Performance Design of HBase with RDMA over InfiniBand. In IPDPS, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. J. Jose, H. Subramoni, K. C. Kandalla, M. W. ur Rahman, H. Wang, S. Narravula, and D. K. Panda. Scalable Memcached Design for InfiniBand Clusters Using Hybrid Transports. In CCGRID. IEEE, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. A. Kalia, D. G. Andersen, and M. Kaminsky. Using RDMA Efficiently for Key-Value Services. In Technical Report CMU-PDL-14-106, 2014.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. J. Li, J. Wu, and D. K. Panda. High Performance RDMA-Based MPI Implementation over InfiniBand. International Journal of Parallel Programming, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. H. Lim, B. Fan, D. G. Andersen, and M. Kaminsky. SILT: A Memory-efficient, High-performance Key-value Store. In SOSP, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. H. Lim, D. Han, D. G. Andersen, and M. Kaminsky. MICA: A Holistic Approach to Fast In-Memory Key-Value Storage. In USENIX NSDI, 2014. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. J. Liu, W. Jiang, P. Wyckoff, D. K. Panda, D. Ashton, D. Buntinas, W. Gropp, and B. Toonen. Design and Implementation of MPICH2 over InfiniBand with RDMA Support. In IPDPD, 2004.Google ScholarGoogle Scholar
  20. X. Lu, N. S. Islam, M. W. ur Rahman, J. Jose, H. Subramoni, H. Wang, and D. K. Panda. High-Performance Design of Hadoop RPC with RDMA over InfiniBand. In ICPP, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. C. Mitchell, Y. Geng, and J. Li. Using One-Sided RDMA Reads to Build a Fast, CPU-Efficient Key-Value Store. In USENIX ATC, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. R. Nishtala, H. Fugal, S. Grimm, M. Kwiatkowski, H. Lee, H. C. Li, R. McElroy, M. Paleczny, D. Peek, P. Saab, D. Stafford, T. Tung, and V. Venkataramani. Scaling Memcache at Facebook. In USENIX NSDI, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. D. Ongaro, S. M. Rumble, R. Stutsman, J. Ousterhout, and M. Rosenblum. Fast Crash Recovery in RAMCloud. In SOSP, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. R. Pagh and F. F. Rodler. Cuckoo Hashing. J. Algorithms, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. P. Stuedi, A. Trivedi, and B. Metzler. Wimpy Nodes with 10GbE: Leveraging One-Sided Operations in Soft-RDMA to Boost Memcached. In USENIX ATC, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. S. Sur, A. Vishnu, H.-W. Jin, W. Huang, and D. K. Panda. Can Memory-Less Network Adapters Benefit Next-Generation InfiniBand Systems? In HOTI, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. S. Sur, M. J. Koop, L. Chai, and D. K. Panda. Performance Analysis and Evaluation of Mellanox ConnectX Infiniband Architecture with Multi-Core Platforms. In HOTI, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. A. Trivedi, B. Metzler, and P. Stuedi. A Case for RDMA in Clouds: Turning Supercomputer Networking into Commodity. In APSys, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. B. White, J. Lepreau, L. Stoller, R. Ricci, S. Guruprasad, M. Newbold, M. Hibler, C. Barb, and A. Joglekar. An Integrated Experimental Environment for Distributed Systems and Networks. In OSDI, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. J. Wu, P. Wyckoff, and D. K. Panda. PVFS over InfiniBand: Design and Performance Evaluation. In Ohio State University Tech Report, 2003.Google ScholarGoogle Scholar
  31. D. Zhou, B. Fan, H. Lim, M. Kaminsky, and D. G. Andersen. Scalable, High Performance Ethernet Forwarding with CuckooSwitch. In CoNEXT, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Using RDMA efficiently for key-value services

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
  • Published in

    cover image ACM Conferences
    SIGCOMM '14: Proceedings of the 2014 ACM conference on SIGCOMM
    August 2014
    662 pages
    ISBN:9781450328364
    DOI:10.1145/2619239

    Copyright © 2014 Owner/Author

    Permission to make digital or hard copies of part or all 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 third-party components of this work must be honored. For all other uses, contact the Owner/Author.

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    • Published: 17 August 2014

    Check for updates

    Qualifiers

    • research-article

    Acceptance Rates

    SIGCOMM '14 Paper Acceptance Rate45of242submissions,19%Overall Acceptance Rate554of3,547submissions,16%

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader