Closed hjwilli closed 2 years ago
This is a great idea. We are constrained by Tinkerpop, however...
neo4j-tinkerpop-api-impl currently only supports Neo4J 3.4. Neo4J maintains that library and hasn't released an update in a bit. https://github.com/neo4j-contrib/neo4j-tinkerpop-api-impl/issues/18
It looks like Bolt has been supported since Neo4J 3.0 https://neo4j.com/release-notes/database/neo4j-3-0-0/ However Bolt support has continued to develop, so upgrading Neo4J would be useful.
https://neo4j.com/docs/java-reference/current/java-embedded/bolt/ It sounds like we could enable Bolt on an embedded db without using it exclusively for communication. This would allow us to connect Neo4J Browser to a live running db.
Running Gremlin traversals over Bolt is a different story. Third party documentation I've found uses the neo4j-gremlin-bolt library. https://github.com/SteelBridgeLabs/neo4j-gremlin-bolt The most recent release was in January, 2021. However since then that GitHub org was deleted or made private.
https://repo1.maven.org/maven2/com/steelbridgelabs/oss/neo4j-gremlin-bolt/0.4.6/ Maven still has the source, documentation, and compiled jars. I could put it all on a new repo.
We could try reaching out to Steel Bridge Labs for more information.
There is a separate project that forked and rewrote the above project. It hasn't been updated since 2019 but may be worth trying. https://github.com/Tanemahuta/neo4j-gremlin-bolt
Here is an example using SteelBridgeLabs/neo4j-gremlin-bolt https://community.neo4j.com/t/gremlin-usage-in-neo4j/30332/8
The upshot of the above is that at the Curren time we can open a Bolt port on our embedded graph and use Neo4j Desktop to interact with it.
Would allow easy access of embedded databases in neo4j desktop, and allow easier swapping between embedded and external databases for the carnival application.
See: https://stackoverflow.com/questions/50219699/connecting-to-an-embedded-neo4j-database-as-a-remote-database
https://neo4j.com/docs/java-reference/current/java-embedded/bolt/#java-embedded-bolt