Today, if you are a web applications developer or a Software Engineer or an Architect or an IT Manager - MongoDB and Cassandra are must skills you need to add to your resume.
In the old world of static schema it was enough for a Developer to know RDBMS, but in the new world of dynamic schema where changes are made frequently - knowledge of NoSQL databases is a must. Sooner of later, chances are you will face challenges in your applications that require the use of NoSQL databases and you don't want to be left behind.
Its also possible that your current applications can scale and perform much better by adopting NoSQL databases.
Why would you use NoSQL instead of RDBMS
- Type of Data
If the data you need to store can be represented in a simple table structure - RDBMS is sufficient. But when you have complex data with multiple levels of nesting - it cannot be modeled into relational tables. For example - multilevel nesting can easily be represented in a JSON format and many NoSQL databases like MongoDB support that format.
- How often will your data model change
More often than not - all aspects of the data model are not known at design time. Later if the schema has to be modified - it presents many issues in the RDBMS world. With NoSQL you have the flexibility of changing the schema.
Its a well known fact that as your database grows - RDBMS faces performance issues. In today's world, any industry you take, whether Finance, Healthcare, Ecommerce, Retail etc - they are generating huge amounts of data that has to be stored and analysed to make better business decisions. This is where NoSQL databases like MongoDB and Cassandra are playing an important role. These are highly scalable distributed database systems.