Why should one consider a newer alternative to RDBMS, after all relational databases have been around for over 30 years? It was, and definitely is, a common choice of storage of information in a vast majority of industries. Is RDBMS always the right solution for all situations? As said by a few in some quarters, ‘SQL is outdated’ – Is that true? Let’s examine these questions both historically, and with parameters of what the future beckons.
Three decades ago, storage wasn’t cheap. One had to be very careful of what was being stored and how it was being stored. One could not afford to replicate/duplicate information. The data that was generated then was very structured, more like a financial transaction. We did not have smart phones, refrigerators and other ‘smart’ devices generating data that needed massive storage, and often generating data which is not very structured. In such an environment, can traditional RDBMS’s fit?
The first question then is scalability. As storage requirements and the subsequent data process requirements grow exponentially the database systems must be horizontally scalable. This to the extent of allowing multiple devices storing varied forms of unstructured data on the database. And, multiple processes accessing this data at different times. We therefore, need databases that are more flexible, too.
Traditional databases store data in a relational model, with rows and columns. Rows contain all of the information about one specific entry/entity, and columns are all the separate data points. They have been distinguished by the ACID principle set (atomicity, consistency, integrity, and durability) i.e. structure if data, is preserved at all costs. SQL became the de-facto standard of data processing because it combines elements like data definition, data manipulation, and data querying, all under one umbrella.
In today’s scenario, we are looking at humongous amounts of data of different types that are to be stored by enterprises for various business reasons. If we are to go by the stringent norms that governed they way data was stored using SQL based databases, enterprises will be struggling with their ability to absorb the diverse types of information that today’s “smart” world has to offer. This will pose a direct impact on the way business is done. A thriving enterprise is one that takes into account the way data is growing and invest in technologies that adapt to these new information storage methodologies. NoSQL based storage helps businesses look away from the constraints of traditional database methods. Of course, this does not mean the older ways are passé. Different data scenarios need different storage methods, and so this just means businesses use an intelligent combination of these two, in ratios that work best for them.