Choosing a database solution used to boil down to examining the difference between open source relational and commercial databases solutions. However, these selection criteria have changed with new database technologies emerging, today there is a new term in these criteria, NoSQL databases. This section helps is understanding the NoSQL concept, whether to and consider is a NoSQL database solution or an RDBMS or their integration is the best choice for the project.
What is this NoSQL?
It first started as an in-house database solution for big tech companies, for example, Google BigTable, Amazon Dynamo, Facebook Cassandra, Twitter FlockDB, Yahoo! PNUTS among other large company solutions. They did not start by completely rejecting relational database and other SQL solutions, they tried them all. However, they did not meet the system solutions requirements. The main issues they faced were nearly perfect service availability while operating in an unreliable environment, expectations of low-latency access to massive datasets, and unprecedented transaction volumes. They initially tried the traditional approach, of adding hardware to up the database solution performance, but, this is increasingly expensive with this ever-growing unprocessed data. A shift in the IT operations influenced the design of the NoSQL database solutions. The idea was replicating the data to scale concurrent access across multiple systems was unnecessary as many of the design solutions met the reliability