We have developed custom and proprietary Software for Route Optimization, using Neo4J as our Graph DB. We also developed few plugins and unmanaged Extensions in Java, that implement specific Business Logic whenever search is done on the Graph. Since we are facing severe Performance Issues with Neo4J, we are considering to migrate our proprietary Software from Neo4J to DataStaX DSE 5.0 Graph. But would like to evaluate DSE Graph initially.
We have few specific questions regarding Migration Path from Neo4J --> DataStax Graph DB
We would like to see what it takes to migrate our existing Neo4J Java code to DataStax DSE Graph code. We need to determine the level of effort would involved to do this exercise before we could be up and running on DataStax DSE Graph.
DataStax Graph (DSG) is a real-time distributed graph database, tightly integrated in DataStax's distribution of Apache Cassandra®. It is optimized for fast data storage and traversals, zero downtime, and analysis of complex, disparate, and related datasets.
The combination of all the components comprising Apache Cassandra and DataStax Graph Database makes Cassandra a graphical database. Therefore, you can retrieve complex data with a detailed and easy-to-read representation. Additionally, these components make Cassandra the most popular database.
In short, DSE Graph enables you to identify and analyze hidden relationships between connected data and build powerful modern applications.
DataStax Enterprise (DSE), built on Apache Cassandra™, is the world's most scalable database, well known for 100% uptime, unmatched low latency, and the ability to handle massive data at planetary scale.
This might help: http://www.tinkerpop.com/docs/3.0.0.M1/#neo4j-gremlin
You can essentially connect to your Neo4J instance via the gremlin console, get the data you'd like, and write it out to a file that can be loaded into DSE Graph. That looks something like
graph.io(IoCore.gryo()).writeGraph("tinkerpop-modern.kryo");
See: http://www.tinkerpop.com/docs/3.0.0.M1/#gremlin-kryo
There's a lot to your question, especially around design, that can't be accurately answered in a StackOverflow post since a lot of it is specific to your use case. I suggest reaching out to DataStax directly for those questions, they'll be happy to help. That being said, I will be upfront with you, Neo4J and DSE Graph are very different systems. As such, you may have to rethink schema design as well as application code design.
If you're already familiar with Cassandra, that helps quite a bit around the architecture side. Even so, I do recommend checking out some of the free training around DSE Graph, specifically: https://academy.datastax.com/courses/ds330-datastax-enterprise-graph
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With