Grasper: A High Performance Distributed System for OLAP on Property Graphs

The property graph (PG) model is one of the most general graph data model and has been widely adopted in many graph analytics and processing systems. However, existing systems suffer from poor performance in terms of both latency and throughput for processing online analytical workloads on PGs due to their design defects such as expensive interactions with external databases, low parallelism, and high network overheads. In this paper, we propose Grasper, a high performance distributed system for OLAP on property graphs. Grasper adopts RDMA-aware system designs to reduce the network communication cost. We propose a novel query execution model, called Expert Model, which supports adaptive parallelism control at the fine-grained query operation level and allows tailored optimizations for different categories of query operators, thus achieving high parallelism and good load balancing. Experimental results show that Grasper achieves low latency and high throughput on a broad range of online analytical workloads.

[1]  Panos Kalnis,et al.  Query Optimizations over Decentralized RDF Graphs , 2017, 2017 IEEE 33rd International Conference on Data Engineering (ICDE).

[2]  Daniel J. Abadi,et al.  Scalable SPARQL querying of large RDF graphs , 2011, Proc. VLDB Endow..

[3]  Hyun-Wook Jin,et al.  Exploiting RDMA operations for Providing Efficient Fine-Grained Resource Monitoring in Cluster-based Servers , 2006, 2006 IEEE International Conference on Cluster Computing.

[4]  Hassan Chafi,et al.  The LDBC Social Network Benchmark: Interactive Workload , 2015, SIGMOD Conference.

[5]  Marcelo Arenas,et al.  Semantics and complexity of SPARQL , 2006, TODS.

[6]  Gautam Jain Query Optimization for Parallel Execution , 2007 .

[7]  Orri Erling,et al.  Virtuoso, a Hybrid RDBMS/Graph Column Store , 2012, IEEE Data Eng. Bull..

[8]  Animesh Trivedi,et al.  Wimpy Nodes with 10GbE: Leveraging One-Sided Operations in Soft-RDMA to Boost Memcached , 2012, USENIX ATC.

[9]  James Cheng,et al.  G-thinker: Big Graph Mining Made Easier and Faster , 2017, ArXiv.

[10]  Wencong Xiao,et al.  GraM: scaling graph computation to the trillions , 2015, SoCC.

[11]  Beng Chin Ooi,et al.  Scalable Distributed Stream Join Processing , 2015, SIGMOD Conference.

[12]  Gang Hu,et al.  SQLGraph: An Efficient Relational-Based Property Graph Store , 2015, SIGMOD Conference.

[13]  Yuanyuan Tian,et al.  Big Graph Analytics Platforms , 2017, Found. Trends Databases.

[14]  Richard E. Schantz,et al.  High-performance, massively scalable distributed systems using the MapReduce software framework: the SHARD triple-store , 2010, PSI EtA '10.

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

[16]  Haibo Chen,et al.  Fast and Concurrent RDF Queries using RDMA-assisted GPU Graph Exploration , 2018, USENIX Annual Technical Conference.

[17]  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.

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

[19]  Chengcui Zhang,et al.  GraphD: Distributed Vertex-Centric Graph Processing Beyond the Memory Limit , 2018, IEEE Transactions on Parallel and Distributed Systems.

[20]  James Cheng,et al.  Architectural implications on the performance and cost of graph analytics systems , 2017, SoCC.

[21]  Alexandru Iosup,et al.  LDBC Graphalytics: A Benchmark for Large-Scale Graph Analysis on Parallel and Distributed Platforms , 2016, Proc. VLDB Endow..

[22]  Yi Lu,et al.  Large-Scale Distributed Graph Computing Systems: An Experimental Evaluation , 2014, Proc. VLDB Endow..

[23]  Christoph Lameter,et al.  NUMA (Non-Uniform Memory Access): An Overview , 2013, ACM Queue.

[24]  Surajit Chaudhuri,et al.  Interactive plan hints for query optimization , 2009, SIGMOD Conference.

[25]  Fan Yang,et al.  The Best of Both Worlds: Big Data Programming with Both Productivity and Performance , 2017, SIGMOD Conference.

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

[27]  Jayant R. Haritsa,et al.  PLASTIC: reducing query optimization overheads through plan recycling , 2003, SIGMOD '03.

[28]  Aamer Jaleel,et al.  High performance cache replacement using re-reference interval prediction (RRIP) , 2010, ISCA.

[29]  Ana Sokolova,et al.  Fast, multicore-scalable, low-fragmentation memory allocation through large virtual memory and global data structures , 2015, OOPSLA.

[30]  Binyu Zang,et al.  Computation and communication efficient graph processing with distributed immutable view , 2014, HPDC '14.

[31]  Shin Gyu Kim,et al.  Large Graph Processing Based on Remote Memory System , 2010, 2010 IEEE 12th International Conference on High Performance Computing and Communications (HPCC).

[32]  Erhard Rahm,et al.  Management and Analysis of Big Graph Data: Current Systems and Open Challenges , 2017, Handbook of Big Data Technologies.

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

[34]  Shirish Tatikonda,et al.  From "Think Like a Vertex" to "Think Like a Graph" , 2013, Proc. VLDB Endow..

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

[36]  Ioannis Konstantinou,et al.  H2RDF+: High-performance distributed joins over large-scale RDF graphs , 2013, 2013 IEEE International Conference on Big Data.

[37]  Hai Jin,et al.  TripleBit: a Fast and Compact System for Large Scale RDF Data , 2013, Proc. VLDB Endow..

[38]  Camille Coti,et al.  One-Sided Communications for More Efficient Parallel State Space Exploration over RDMA Clusters , 2018, Euro-Par.

[39]  Min Wu,et al.  GeaBase: A High-Performance Distributed Graph Database for Industry-Scale Applications , 2017, 2017 Fifth International Conference on Advanced Cloud and Big Data (CBD).

[40]  Dhabaleswar K. Panda,et al.  High Performance RDMA-Based MPI Implementation over InfiniBand , 2003, ICS '03.

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

[42]  Amine Mhedhbi,et al.  The Ubiquity of Large Graphs and Surprising Challenges of Graph Processing , 2017 .

[43]  James Cheng,et al.  Large Scale Graph Mining with G-Miner , 2019, SIGMOD Conference.

[44]  Jimmy J. Lin,et al.  Do We Need Specialized Graph Databases?: Benchmarking Real-Time Social Networking Applications , 2017, GRADES@SIGMOD/PODS.

[45]  James Cheng,et al.  G-Miner: an efficient task-oriented graph mining system , 2018, EuroSys.

[46]  Gustavo Alonso,et al.  Distributed Join Algorithms on Thousands of Cores , 2017, Proc. VLDB Endow..

[47]  Katherine A. Yelick,et al.  Optimizing bandwidth limited problems using one-sided communication and overlap , 2005, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[48]  Haibo Chen,et al.  Sub-millisecond Stateful Stream Querying over Fast-evolving Linked Data , 2017, SOSP.

[49]  Wilfred Ng,et al.  Blogel: A Block-Centric Framework for Distributed Computation on Real-World Graphs , 2014, Proc. VLDB Endow..

[50]  Aart J. C. Bik,et al.  Pregel: a system for large-scale graph processing , 2010, SIGMOD Conference.

[51]  Wilfred Ng,et al.  Effective Techniques for Message Reduction and Load Balancing in Distributed Graph Computation , 2015, WWW.

[52]  Jennifer Widom,et al.  GPS: a graph processing system , 2013, SSDBM.

[53]  Joseph Gonzalez,et al.  PowerGraph: Distributed Graph-Parallel Computation on Natural Graphs , 2012, OSDI.

[54]  Fan Yang,et al.  Husky: Towards a More Efficient and Expressive Distributed Computing Framework , 2016, Proc. VLDB Endow..

[55]  Samuel Madden,et al.  What Makes a Good Physical plan?: Experiencing Hardware-Conscious Query Optimization with Candomblé , 2016, SIGMOD Conference.

[56]  Norman May,et al.  Scaling Up Concurrent Main-Memory Column-Store Scans: Towards Adaptive NUMA-aware Data and Task Placement , 2015, Proc. VLDB Endow..

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

[58]  Haixun Wang,et al.  A Distributed Graph Engine for Web Scale RDF Data , 2013, Proc. VLDB Endow..

[59]  Yuanyuan Tian,et al.  Systems for Big Graph Analytics , 2017, SpringerBriefs in Computer Science.