PGX 1.2.0

What is New in PGX 1.2

Graph Pattern Matching with a Query Language

PGX 1.2 implements a graph query engine which allows you to find every subgraph instance that matches with the given query pattern in your graph data. For example, you can ask questions like: "Find all (vertices) whom both Mario (vertex) and Luigi (vertex) like (edge) but is older (property) than Mario, by more than two years, and print their names and ages (property)."

Please check out our tutorial and use cases for details of our query language and its usages.

Implementing a Recommendation Engine with PGX

The PGX 1.2 built-in package includes a simple recommendation engine that is built upon a graph algorithm. Given a dataset of ratings from the users about their purchased items, the engine predicts future rating values for the unrated items from a user. Note that the ratings data set, usually recognized as a sparse matrix, is also viewed as a bipartite graph, which is how one can solve this problem with PGX.

Our use case documentation provides more information about the recommendation engine.

Very Fast Centrality Computation

PGX 1.2 brings you new fast implementations of Betweenness Centrality and Closeness Centrality algorithms. The following table compares the performance measurement of these implementations against a public open-source library, namely iGraph.

Algorithm PGX iGraph
Closeness Centrality 1.8 hours not finished after 5 days
Betweenness Centrality 24 hours not finished after 5 days

The performance was measured with a 16.5 million edge graph using a 36-core 2.6 GHz Intel Xeon machine.