PGX: An In-Memory, Parallel Graph Analytic and Query Engine
Share this Session:
  Sungpack Hong   Sungpack Hong
Research Manager
  Korbinian Schmid   Korbinian Schmid
Software Consultant
  Jan Van der Lugt   Jan Van der Lugt
Member of Technical Staff


Wednesday, August 20, 2014
12:15 PM - 12:45 PM

Level:  Technical - Introductory

In this session, we will present a graph processing system in which a graph database is tightly integrated with a graph analytic engine. Our graph database, based on existing NoSQL and relational databases, provides scalable management of graph data for transactional workloads. Our graph analytic engine, on the other hand, enables rapid execution of analytic workloads.

We first introduce PGX, our in-memory graph analytic engine which initially loads up the graph data from the database and periodically synchronizes afterward. The parallel execution engine of PGX is very efficient – e.g., counting triangles in billion-edge graphs in two minutes. Users can also submit their custom graph algorithms written in a domain-specific language; PGX automatically parallelizes them for execution.

Then we introduce PGX.DIST, our distributed graph analytic engine. We show that PGX.DIST is up to orders of magnitude faster than the state-of-the-art graph analytic engine. The DSL compiler can help run the same algorithm on both PGX and PGX.DIST transparently.

Sungpack Hong is a Research Manager at Oracle where he is currently taking the role of technical leader for a few graph-related research projects. His research interests include high-performance parallel graph analytic, distributed graph processing, special hardware for graphs and domain specific languages. He has been publishing several high-impact papers regarding these topics. Sungpack received his PhD from Stanford University and Master and BS from KAIST. In between these two academic programs, he worked as a software developer for high-performing systems in Samsung and ETRI.

Korbinian is working at Oracle Labs developing PGX, a fast in-memory graph analytic framework. He is interested in high performance computing, parallel programming and domain specific languages. Korbinian received a MSc in Software Engineering from Technical University Munich.

Jan van der Lugt is working at Oracle Labs on distributed graph analysis. He studied Parallel and Distributed Computer Systems at the VU University Amsterdam, after a Bachelor in Artificial Intelligence. He enjoys writing efficient, high-performance code to solve novel problems.

Close Window