In my organization, we need to maintain hierarchies of employees and customers. We also have to track the history of these hierarchies, which is why we are using a graph database. Our earlier choice was Neo4j, but due to cost issues, we switched to Neptune.
Unlike Neo4j, which has visual representations of the graph, I haven't seen that in Neptune. I think Neptune should introduce that.
I would like to see a visual representation of the graphs. By graphs, I refer to the data structure in the graph database. We should be able to visually see how the nodes we insert are connected.
For example, on Facebook, people have multiple friends who have their own friends. We should be able to visually see the connections between people and how they are related when we run a query, instead of just getting results in JSON. This visual representation is helpful for analysis and other purposes.
I have recently used it. It has been six months.
So far, the stability has been fine.
There are around two end users.
The customer service and support are good.
We were on Neo4j earlier, and the primary reason for switching was cost.
The initial setup is actually simple. We don't have much trouble with it.
In my scenario, the integration wasn't easy because we're using the Quarkus framework in Java. I had to figure out some other methods, some basic raw methods, to run the query. But they do have built-in SDKs that can be used for plain Java or Spring Boot applications. So, I would rate the integration difficulty as above average.
It is not easy for a beginner to learn to use Neptune. You would need prior knowledge of graph data or similar concepts. It's about having a basic understanding.
Opting for this solution totally depends on your parameters. One parameter is definitely the cost. For a single instance, the monthly cost of Neo4j is $65 without the visual representation and over a hundred with it. In terms of AWS, it's around $10 to $20 a month. So, from a cost perspective, you should go with Neptune. It gives a similar performance to Neo4j.
Also, consider if your developers have a good understanding of the graph data structure they are going to implement in the graph database. If so, I think Neptune is a fine tool.
Overall, I would rate the solution a nine out of ten.