Release Date: 7 February 2020

Important information: This is a preview release and not recommended for production. The graph data science library is not compatible with Neo4j 4.0 or with the Neo4j graph algorithms plugin.

As this is a preview release, this is still a work in progress. If you have any feedback, please open issues on our repo! We will be continuing to work on improving our documentation and adding functionality ahead of our 1.0 GA, planned for early March.

0.9.1 Notes:

  • Ongoing improvements to the preview documentation
  • Bug fixes: Fixed a bug where the thread pool size was always limited to 4;
  • Breaking changes:
    • The projection key within relationshipProjects has been renamed to orientation
    • Removed the syntactic sugar variant the allowed defining multiple projections via a piped string
    • Fixed incorrect counts in graph.create.estimate for fictitious graphs
  • Balanced Triads is no longer supported


Highlights:

  • Alpha, Beta, and Production Quality Algorithms: We’ve divided the algorithms library into three tiers to indicate the level of support and testing that has gone into each on. Production quality algorithms have been highly optimized and are guaranteed to scale and execute quickly; alpha algorithms are experimental labs implementations; and beta algorithms are candidates for product support.
  • New API: In order to simplify the use of the graph data science library and create a more intuitive, expressive, and easy to use surface, the GDS has a new surface and API. Major changes include specifying node and relationships in the configuration parameters, specifying directionality in a single location (only when graphs are initially loaded), and the additions of `.write`, `.stats`, and `.estimate` modes.
  • Better error messaging: To help users adjust to the new library, and to prevent common gotchas, we’ve invested in intuitive and easy to understand error messages. Trying to run an algorithm that requires a directed graph on an undirected projection? We’ll tell you!
  • Named Graphs: Previously available in the graph algorithms library, but underutilized, the recommended workflow in the GDS is to use name graphs to load and manage data into an in-memory analytics graph. This approach is compatible with production deployment of algorithm or analytics workloads on graphs that contain billions of nodes and relationships.
  • Graph Catalog Operations: We’ve introduced graph catalog operations to enable users to create, reshape, and manage multiple named graphs for GDS workflows.
  • Multiple Relationship Types and Node Labels: We support multiple node labels and relationship types in loaded graphs, including the ability to load multiple different relationship projections. This was previewed in recent graph algorithms releases, but we’ve expanded the flexibility and expressiveness of these operations under the GDS.
  • Bug fixes and feature improvements: We support all the most popular algorithms from the labs library, and continue to provide bug fixes and enhancements.

Compatibility:

  • The GDS 0.9 Preview Release is compatible with Neo4j 3.5 versions greater than 3.5.8
  • The GDS 0.9 Preview Release is not compatible with Neo4j 4.0. We plan on releasing a 4.0 compatible binary in mid Q2 2020.
  • The GDS library is not compatible with the graph algorithms library — installing both plug ins in the same database will result in an error message.

Ready to get started? Download the jar from the Neo4j download center, or on our github repo, and install it in your plugins directory. We’ve created a browser guide, :play graph-data-science, to familiarize users with the new surface, features, and workflows.

Feedback? Please post feedback as issues on our github repo!