Should you choose Relational DB or NoSQL? As always the answer depends on use case. No DB is better than another in all cases, but for some uses the decision may be simple.
To make my decision I needed to get familiar with the NoSQL concept from scratch. In this post I’ll show you the best webcasts that really helped me to get into this topic and know the notion behind it – from the basics to more detailed materials. To get the idea of particular DB implementation and narrow the amount of google results I concentrated on MongoDB.
What is NoSQL all about?
The first video is a Martin Fowler’s speech at goto conference. He introduces the NoSQL concept, its limitations and benefits. What is compelling, he does not state that the NoSQL is a solution for everything and is somehow cautious about using it in critical scenarios. This is really honest and objective speech, worth watching at the beginning:
The CAP theorem
So the biggest advantage of NoSQL seems to be horizontal scalability in the cost of consistency and relations. Martin Fowler mentioned about the CAP theorem: from the Consistensy, Availability and Partition Tolerance, you can choose two that you most care of on the cost of the third one. Read visual guide and theorem explanation on this site:
Introduction to MongoDB: How to query data
Concentrating on MongoDB, I encountered another webcast where speaker explained how Mongo works, what kind of NoSQL database it is and how to store and query data in it:
How to model data in MongoDB
When I got notion what NoSQL is and how to query data, I needed to find out how to model data in NoSQL. MongoDB is a document DB and here is really good introduction to data modelling topc:
Until now I’ve had an experience with Relational Database modelling only, so the NoSQL database modelling was unknown to me. Thanks to this webcast I really got the idea. I felt relieved when speaker said that even if you have relations in your data, you can still use NoSQL and perform joins in app logic. It doesn’t mean that you should model relational schemas in NoSQL, but relations are not a blocker.
Is NoSQL worth using at all?
This short video made me confused:
You should always think twice if all the limitations of NoSQL and RDBMS databases to decide responsibly which solution to choose.
Did I help you?
I manage this blog and share my knowledge for free, sacrificing my time. If you appreciate it and find this information helpful, please consider making a donation in order to keep this page alive and improve quality