NoSQL is something that we hear about a lot these days. In a series of articles, I will try to highlight what, when and why we need NoSQL solutions. Also there are several NoSQL options available in Azure. We will try to explore each of these and try to understand when to use which solution.
This article focuses on the basics on NoSQL:
First of all, the term "NoSQL" is a misnomer. What it means is "non-relational". Well if you remember E.F. Codd, ACID properties & the evolution of RDBMS you might say that we have come a full circle. That's true in a way. Because with the proliferation of various types of data - documents, JSON, User Preferences etc and with the advent of Internet Of Things (IoT), there has been a significant change in the very nature of data. Earlier most DB systems were built to support organizational data - meaning transnational data and therefore Relational DB made perfect sense. Now the nature of data is changed to - high volume, high variety & high velocity. In comes NoSQL!
NoSQL is not a technology but a conceptual solution solved by using different database technologies. Fundamental idea is to support "high volume, high variety & high velocity" data storage. But this does not mean traditional RDBMS is getting replaced. There is still a lot of data that is well structured and suited for RDBMS in which cases the solution is to use a RDBMS database. Both RDBMS & Non-RDBMS (NoSQL) have their own space and a database architect needs to make a call on the right solution based on the nature of the data and needs of the customer.
In our next post, we will look at the basic classification/types of NoSQL and the advantages of using NoSQL.