There are many factors which gives NoSQL Databases an edge over the conventional RDBMS. I will list down 3 which I think are the most important
- No Fixed Schema : This, if feel is the biggest advantage of NoSQL databases. One doesn’t need to know the structure of data before hand as it is with the RDBMS (requires a fixed schema). The format / data model can be changed anytime without affecting the application driven by the database. This in turn provides business flexibility.
- Ability to handle big data better : Using Hadoop implementations in conjugation with NoSQL database, data could be stored across 1000s of servers( Volumes of data which even the biggest RDBMS can’t handle ). This data can be processed and retrieved really fast.
- Lesser server cost : NoSQL databases use clusters of cheap commodity servers to manage the exploding data and transaction volumes, while RDBMS tends to rely on expensive proprietary servers and storage systems.
But the answer wont be complete until I include short comings too. Almost all the NoSQL systems are in there nascent and pre production stages. Many data related (Analytical) features are yet to be implement.
The main shortcomings are
- Customer support : RDBMS vendors provides high level enterprise solution to clients. But most of the companies developing NoSQL systems are start-ups that lack the global reach.
- Coding difficulty : Writing SQL queries ( in RDBMS) is really easy and fast. But in NoSQl systems even a simple query requires significant programming expertise.
Leave a comment