Search code examples
neo4jspring-data-neo4j-4neo4j-ogm

Spring Data Neo4j 4 limitations?


I am evaluating if I should use Spring Data Neo4j 4 or directly use the native APIs that Neo4j has. Is it possible to get the full potential of Neo4j when using Spring Data Neo4j 4 or will it limit my future usage of Neo4j?

I see the benefit with that POJO simplifies the storage of objects in the database.


Solution

  • There are 2 "native" APIs

    • There is the Java API, that you can access in unmanaged extensions or when using Neo4j as embedded
    • Neo4j java driver (a.k.a. Bolt) - this what Neo itself promotes the most

    OGM (and therefore SDN) supports both embedded and bolt, with new features of Bolt being covered shortly after being released.

    There are some features of the embedded database that can't be used (at least not directly, you may use them through user-defined procedures/functions). E.g. traversals etc..

    You should also consider other aspects of your use case, like performance, if your domain model matches the graph model etc..