The Oracle Labs PGX project [1] aims at developing high-performance graph analytic and query processing solutions for billion-edge-scale graphs. PGX comes in two flavors [2]: A single-machine (PGX.SM) and a distributed (PGX.D), both in-memory, engines.
In this presentation, I will focus on PGX.D [3, 4], which can process graphs much larger than the memory capacity of single multi-cores. PGX.D achieves great performance by leveraging fast network interconnects and modern multi-cores using various techniques (e.g., graph partitioning, partial replication, message batching). I will also describe the different needs between graph analytics and queries and show how PGX.D achieves good scalability on both.
[1]http://www.oracle.com/technetwork/oracle-labs/parallel-graph-analytix/overview/index.html [2] Using domain-specific languages for analytic graph databases. VLDB'16. [3] PGX.D: A fast distributed graph processing engine. SC'15. [4] PGX.D/Async: A scalable distributed graph pattern matching engine. GRADES'17.
Vasileios Trigonakis is a researcher at Oracle Labs Switzerland. His main research interests include graph processing, and concurrent, parallel, and distributed runtimes and programming. Vasileios received his PhD (titled "Towards Scalable Synchronization on Multi-Cores") from EPFL Switzerland in 2016. His dissertation was awarded the 2017 EuroSys Roger Needham PhD award for the best European thesis in Systems. During his PhD, Vasileios joined Oracle Labs Cambridge for a three-month internship.