Graph analysis lets you reveal latent information that is not directly apparent from fields in your data, but is encoded as direct and indirect relationships - metadata - between elements of your data. This connectivity-related information is not obvious to the naked eye, but can have tremendous value once uncovered.
PGX is a toolkit for graph analysis, supporting both efficient graph algorithms and fast SQL-like graph pattern matching queries.
The tools included as part of the PGX distribution include:
The typical usage pattern in PGX is to
In addition, PGX offers features for filtering graphs, extracting subgraphs and much more.
Check out our what's new page for the latest features in each PGX release.
PGX can be used in several ways:
In a Java (or Scala or Groovy or other JVM language) application:The entire runtime, PGX or the PGX client (talking to a remote PGX server) can be used as a library embedded in a Java application.
Interactively from the shell: The user can also make use of PGX, as if it is a separate application, by using the PGX shell. Once the user starts up the PGX shell, they can load graphs, invoke algorithms, and browse/export results in a very simple manner using the shell.
Remote usage: For both use cases above, you can either use PGX locally or remotely. In the remote case you need to start PGX on a webserver and provide the client with a hostname and port to connect to. If you use PGX locally, it will simply spin up a local PGX instance on which you can work without any HTTP overhead.
Refer to our programming guides or the specific product documentation for more information on how to use PGX.
PGX is provided to Oracle customers as part of several products; see more details at this page. The standalone OTN version of PGX is retired as of early 2020. You can still get a preview version under the OTN license by downloading the Oracle Graph Server and Client preview package.
There is an OTN Community forum for the purpose of gathering feedback and to provide a space for users of PGX to communicate. We encourage you to discuss issues and use cases related to PGX there. We especially welcome suggestions for improvement and interesting features you would like us to add in future releases. This community is also a great place to discuss novel graph algorithms with fellow PGX users and developers.