DEV Community

Hayden McParlane
Hayden McParlane

Posted on • Edited on

Pros and Cons of Graph Databases Vs. Alternatives

What is your opinion of graph databases when compared to SQL databases and traditional noSQL databases (excluding graph DBs)? What are the pros and cons of usage of a graph DB such as neo4j? How does it stand up to different use-cases such as representation of timeseries data? What are the pros and cons of each DB alternative?

Top comments (1)

Collapse
 
haydenmcp profile image
Hayden McParlane • Edited

EDIT:
I was able to get the neo4j helm chart running by allocating more block storage using 2 Gigs. This combined with use a google chrome (Firefox can bug out when using the neo4j web browser) eliminated the issues that I saw allowing cheaper use of neo4j.


I found this online which may help so I thought I'd post it in this discussion:
courses.cs.washington.edu/courses/...

I've started testing Neo4j on my DigitalOcean kubernetes cluster and because of Neo4j's heavy memory use it may require upgrading my nodes which would cost ~500.00 USD ( US Dollars) per month. The current cost is ~230.00 USD per month. The Neo4j documentation specifies that reliable operation of Neo4j requires around 8 - 16GB of RAM for heap-memory alone. The recommendation is that you allocate enough heap memory for concurrent operations. However, having applied 3GB on my node with ~6GB available for use I observe unresponsiveness.

One aspect that I think makes use of Neo4j desirable is it's use of Cypher. Cypher, with my minimal experience, is extremely easy to read when compared to complex SQL queries. That increases developer productivity because understanding and modifying queries doesn't require visualizing how the tables are joining and such. It requires reading the ASCII art, observing the variables present and the RETURN statement if one is present.