How to Choose Between an RDBMS and a NoSQL Database

NoSQL databases disrupted the orderly world of relational database management systems (RDBMS). These databases offered tremendous scope for scaling, economy and flexibility, compared to the rigidity of RDBMSs. However, in a world overflowing with data, both have their place. This article will point you in the right direction when it comes to a choice. 


In the planet of database technology, there are two main types of databases: SQL and NoSQL—or, relational databases and non-relational databases. The differences are mainly in how they’re built, the type of information they store and how they store it. Relational databases are structured like phone books that store phone numbers and addresses. Nonrelational databases are documentoriented and distributed, like file folders that hold everything from a person’s address and phone number to their Facebook likes and online shopping preferences. We call them
SQL and NoSQL.

The rise of RDBMSs

In 1970, E.F. Codd envisioned a new model of DBMS through his paper titled, ‘A Relational Model of Data for Large Shared Data Banks’, which paved the way for the emergence of relational DBMSs (RDBMSs).

  • RDBMSs formulated a new methodology for storing data and processing large databases.
  • The records (data) would be stored in ‘tables’ with fxed-length records, unlike the free-form list of linked records in an IDS (Integrated Data Store) and IMS (Information Management System).
  • Later, databases like Ingres, and a query language like SQL evolved.

The nuances and benefts of RDBMSs had a wide impact, resulting in buy-in from different vendors and setting the stage for an era of the database wars. Many RDBMSs such as Sybase, Microsoft SQL Server, Informix, MySQL, DB2 and Oracle got launched around the same time, each claiming to be better in terms of:

  • Performance
  • Availabilityƒ
  • Functionalitiesƒ
  • Cost of storage
  • Economy of usage

With no competition, RDBMSs got completely entrenched in the IT ecosystem by the early 2000s.

The evolution of NoSQL

Around 2005, the architectural design of applications changed from the clientserver model to the massive Web scale applications. This put a lot of pressure on RDBMSs that couldn’t innovate on the following aspects:

  • Level of usage
  • Volume of data considered
  • Capability of handling/monitoring change

This started the era of the distributed non-relational database management system, later called ‘NoSQL’, which was more aligned to new age applications. NoSQL grabbed everyone’s attention because it changed the way traditional SQL databases worked.