RDMA-driven MongoDB: An approach of RDMA enhanced NoSQL paradigm for large-Scale data processing

Abstract With the rapid development of big data and data center networks, NoSQL database has won great popularity for its excellent performance in accelerating the performance of many online and offline big data applications, such as HBase, Cassandra and MongoDB. However, due to massive and frequent Create/Update/Retrieval/Delete (CURD) operations, the traditional TCP/IP protocol stack has difficulty to provide the required request rates and response latency for the large-scale NoSQL system. For example, large-scale data migration or synchronization among multiple clusters in a data center results in competition for network bandwidth with high delay. To mitigate such transmission bottleneck, we propose an approach of RDMA-driven document NoSQL Paradigm’ RDMA_Mongo, based on MongoDB. The performance of CURD operations is enhanced by one-sided Remote Direct Memory Access (RDMA) primitives (such as RDMA Read/Write) without involving the TCP/IP stack or CPU. Evaluation under RDMA-enabled network demonstrates that RDMA_Mongo significantly improves the CURD performance, compared with plain MongoDB. The results show that the average insert throughput increases by approximately 30%, the average delete throughput by over 30%, the update by up to 17% and the query throughput by 15% when facing large-scale data requests.

[1]  Tim Brecht,et al.  Nessie: A Decoupled, Client-Driven Key-Value Store Using RDMA , 2017, IEEE Transactions on Parallel and Distributed Systems.

[2]  Jinyang Li,et al.  Balancing CPU and Network in the Cell Distributed B-Tree Store , 2016, USENIX ATC.

[3]  Scott Shenker,et al.  Revisiting network support for RDMA , 2018, SIGCOMM.

[4]  Fang Liu,et al.  InnerCache: A Tactful Cache Mechanism for RDMA-Based Key-Value Store , 2016, 2016 IEEE International Conference on Web Services (ICWS).

[5]  Dhabaleswar K. Panda,et al.  High-Performance Design of HBase with RDMA over InfiniBand , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium.

[6]  Kenli Li,et al.  A Parallel Random Forest Algorithm for Big Data in a Spark Cloud Computing Environment , 2017, IEEE Transactions on Parallel and Distributed Systems.

[7]  Sayantan Sur,et al.  Memcached Design on High Performance RDMA Capable Interconnects , 2011, 2011 International Conference on Parallel Processing.

[8]  Haibo Chen,et al.  Fast In-Memory Transaction Processing Using RDMA and HTM , 2017, ACM Trans. Comput. Syst..

[9]  Feng Li,et al.  Accelerating Relational Databases by Leveraging Remote Memory and RDMA , 2016, SIGMOD Conference.

[10]  Torsten Hoefler,et al.  DARE: High-Performance State Machine Replication on RDMA Networks , 2015, HPDC.

[11]  Haibo Chen,et al.  Fast and general distributed transactions using RDMA and HTM , 2016, EuroSys.

[12]  Sanming Zhou,et al.  Networking for Big Data: A Survey , 2017, IEEE Communications Surveys & Tutorials.

[13]  Ahmad Afsahi,et al.  10-Gigabit iWARP Ethernet: Comparative Performance Analysis with InfiniBand and Myrinet-10G , 2007, 2007 IEEE International Parallel and Distributed Processing Symposium.

[14]  Cheng Wang,et al.  APUS: fast and scalable paxos on RDMA , 2017, SoCC.

[15]  Li Zhang,et al.  HydraDB: a resilient RDMA-driven key-value middleware for in-memory cluster computing , 2015, SC15: International Conference for High Performance Computing, Networking, Storage and Analysis.

[16]  Dhabaleswar K. Panda,et al.  High-Performance Design of YARN MapReduce on Modern HPC Clusters with Lustre and RDMA , 2015, 2015 IEEE International Parallel and Distributed Processing Symposium.

[17]  Zhihui Lu,et al.  QaMeC: A QoS-driven IoVs application optimizing deployment scheme in multimedia edge clouds , 2019, Future Gener. Comput. Syst..

[18]  Li Zhang,et al.  C-Hint: An Effective and Reliable Cache Management for RDMA-Accelerated Key-Value Stores , 2014, SoCC.

[19]  Enhong Chen,et al.  Multi-Path Transport for RDMA in Datacenters , 2018, NSDI.

[20]  Odysseas I. Pentakalos An Introduction to the InfiniBand Architecture , 2002, Int. CMG Conference.

[21]  Sancheng Peng,et al.  An Immunization Framework for Social Networks Through Big Data Based Influence Modeling , 2019, IEEE Transactions on Dependable and Secure Computing.

[22]  Feilong Liu,et al.  Design and Evaluation of an RDMA-aware Data Shuffling Operator for Parallel Database Systems , 2017, EuroSys.

[23]  Jinyang Li,et al.  Using One-Sided RDMA Reads to Build a Fast, CPU-Efficient Key-Value Store , 2013, USENIX ATC.

[24]  Shih-Chia Huang,et al.  iDiSC: A New Approach to IoT-Data-Intensive Service Components Deployment in Edge-Cloud-Hybrid System , 2019, IEEE Access.

[25]  Miguel Castro,et al.  FaRM: Fast Remote Memory , 2014, NSDI.

[26]  Daniel J. Abadi,et al.  Integrating compression and execution in column-oriented database systems , 2006, SIGMOD Conference.

[27]  Kang Chen,et al.  RFP: When RPC is Faster than Server-Bypass with RDMA , 2017, EuroSys.

[28]  David G. Andersen,et al.  Using RDMA efficiently for key-value services , 2015, SIGCOMM 2015.

[29]  Pavan Balaji,et al.  Scalable connectionless RDMA over unreliable datagrams , 2015, Parallel Comput..

[30]  Patrick MacArthur Userspace RDMA Verbs on Commodity Hardware Using DPDK , 2017, 2017 IEEE 25th Annual Symposium on High-Performance Interconnects (HOTI).

[31]  Jim Webber,et al.  A programmatic introduction to Neo4j , 2018, SPLASH '12.

[32]  Yiying Zhang,et al.  LITE Kernel RDMA Support for Datacenter Applications , 2017, SOSP.

[33]  Dhabaleswar K. Panda,et al.  Accelerating I/O Performance of Big Data Analytics on HPC Clusters through RDMA-Based Key-Value Store , 2015, 2015 44th International Conference on Parallel Processing.

[34]  Haibo Chen,et al.  Deconstructing RDMA-enabled Distributed Transactions: Hybrid is Better! , 2018, OSDI.

[35]  Dhabaleswar K. Panda,et al.  Accelerating Spark with RDMA for Big Data Processing: Early Experiences , 2014, 2014 IEEE 22nd Annual Symposium on High-Performance Interconnects.

[36]  Haibo Chen,et al.  Fast and Concurrent RDF Queries with RDMA-Based Distributed Graph Exploration , 2016, OSDI.

[37]  Dhabaleswar K. Panda,et al.  High-Performance Hybrid Key-Value Store on Modern Clusters with RDMA Interconnects and SSDs: Non-blocking Extensions, Designs, and Benefits , 2016, 2016 IEEE International Parallel and Distributed Processing Symposium (IPDPS).

[38]  Dhabaleswar K. Panda,et al.  High Performance Design for HDFS with Byte-Addressability of NVM and RDMA , 2016, ICS.

[39]  Guan Le,et al.  Survey on NoSQL database , 2011, 2011 6th International Conference on Pervasive Computing and Applications.

[40]  David G. Andersen,et al.  FaSST: Fast, Scalable and Simple Distributed Transactions with Two-Sided (RDMA) Datagram RPCs , 2016, OSDI.

[41]  Kenjiro Taura,et al.  Uni-Address Threads: Scalable Thread Management for RDMA-Based Work Stealing , 2015, HPDC.

[42]  Tao Li,et al.  Octopus: an RDMA-enabled Distributed Persistent Memory File System , 2017, USENIX ATC.

[43]  Michael Kagan,et al.  Performance evaluation of the RDMA over ethernet (RoCE) standard in enterprise data centers infrastructure , 2011 .

[44]  Haitao Wu,et al.  RDMA over Commodity Ethernet at Scale , 2016, SIGCOMM.