Skip to content

So you need a database?

But what kind of database ?

There's relational databases and non-relational databases. Which is which?

Relational databases (RDBMS) like MySQL, Oracle, PostgreSQL represent and store data in tables and rows. Tables can be defined as required along with any relationships between them (So the word relational). So what if the columns change, like per every entry?

Non-relational databases or NoSQL databases like MongoDB, DynamoDB, Cassandra, HBase are able to store unstructured data. While all of them provide ways to store data, these NoSQL databases can be divided to 4 types, key-value stores, graph stores, document stores and column stores. Relationships (as it says in title) are not suppported in NoSQL databases.

Relational databases are the forefathers of data storage, has been there for the longest time and worked well. But when should we look at NoSQL databases?

If - latency is critical - data is unstructured and hardly any relationships - you just need to store the data, not search or anything (just serialize and deserialize) - data comes in massive chunks

your best option would be to pick a NoSQL database of your choice and requirement.