skip to main content
research-article

Beyond MPI: New Communication Interfaces for Database Systems and Data-Intensive Applications

Published:10 March 2021Publication History
Skip Abstract Section

Abstract

Networkswith Remote DirectMemoryAccess (RDMA) support are becoming increasingly common. RDMA, however, offers a limited programming interface to remote memory that consists of read, write and atomic operations. With RDMA alone, completing the most basic operations on remote data structures often requires multiple round-trips over the network. Data-intensive systems strongly desire higher-level communication abstractions that supportmore complex interaction patterns.

A natural candidate to consider is MPI, the de facto standard for developing high-performance applications in the HPC community. This paper critically evaluates the communication primitives of MPI and shows that using MPI in the context of a data processing system comes with its own set of insurmountable challenges. Based on this analysis, we propose a new communication abstraction named RDMO, or Remote DirectMemory Operation, that dispatches a short sequence of reads, writes and atomic operations to remote memory and executes them in a single round-trip.

References

  1. G. Alonso, C. Binnig, et al. DPI: the data processing interface for modern networks. In CIDR, 2019.Google ScholarGoogle Scholar
  2. C. Barthels et al. Rack-Scale In-Memory Join Processing Using RDMA. In SIGMOD, 2015.Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. C. Barthels et al. Distributed Join Algorithms on Thousands of Cores. PVLDB, 2017.Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. R. Belli and T. Hoefler. Notified Access: Extending Remote Memory Access Programming Models for Producer-Consumer Synchronization. In IPDPS, 2015.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. C. Binnig et al. The End of Slow Networks: It's Time for a Redesign. PVLDB, 2016.Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. A. Costea et al. VectorH: Taking SQL-on-Hadoop to the Next Level. In SIGMOD, 2016.Google ScholarGoogle Scholar
  7. Global Arrays. http://hpc.pnl.gov/globalarrays.Google ScholarGoogle Scholar
  8. J. Gray and A. Reuter. Transaction Processing: Concepts and Techniques. Morgan Kaufmann, 1993.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. A. Kalia et al. Using RDMA Efficiently for Key-value Services. SIGCOMM, 2014.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. F. Liu et al. Design and Evaluation of an RDMA-aware Data Shuffling Operator for Parallel Database Systems. In EuroSys, 2017.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. F. Liu et al. Chasing similarity: Distribution-aware aggregation scheduling. PVLDB, 12(3):292--306, 2018.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. MVAPICH. http://mvapich.cse.ohio-state.edu/.Google ScholarGoogle Scholar
  13. OpenMPI. https://www.open-mpi.org/.Google ScholarGoogle Scholar
  14. R. Rajwar and J. R. Goodman. Speculative Lock Elision: Enabling Highly Concurrent Multithreaded Execution. In MICRO, 2001.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. W. R¨odiger et al. High-speed Query Processing over High-speed Networks. PVLDB, 2015.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. K. Umamageswaran et al. Exadata Deep Dive: Architecture and Internals. Oracle OpenWorld, 2017.Google ScholarGoogle Scholar
  17. E. Zamanian et al. The End of a Myth: Distributed Transaction Can Scale. PVLDB, 2017.Google ScholarGoogle ScholarDigital LibraryDigital Library

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

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader
About Cookies On This Site

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

Learn more

Got it!