DEV Community

Discussion on: Should I go NoSQL or SQL for my specific app case? Or both?

Collapse
 
kspeakman profile image
Kasey Speakman • Edited

Here are some deciding factors I might use:

Am I dealing with sets of data and set membership?
i.e. Which vehicles are in the SUV category?

Relational

Do I have nested objects which are saved and loaded as one?
a.k.a. Do I feel forced to use an ORM to scatter and reconstitute an object from tables? i.e. a company and all its addresses and contacts.

Document or Key/Value

Do I need to answer questions about how things are arbitrarily related?
i.e. Who likes the same Dunkin Donuts as Alice?

Graph

There are a lot of other kinds of databases (temporal, geospatial, columnar, search, etc). And lots of other considerations you could go by.

Sounds to me like relational (SQL) is still about the best fit for most of it (especially the watch lists).

+1 for Postgres... in addition to SQL it can do JSON document or KV storage, and full text search is pretty easy / effective. I would also pick Postgres over MySQL. Last I used MySQL was 5.x, but it was pretty terrible as a relational database.