sql-vs-nosql

SQL vs NoSQL

SQL vs NoSQL, wondering which to choose for your database? Don’t worry follow me on this blog and find out what the best database for your project.

Problem

As usual we will use some of my project to be an example and follow the requirement to get to know which database is good for a project in different circumstances.

Prerequisites

SQL Definition

Stands for Structured Query Language, is used communicate with a database.

It is the standard language for relational Data Management System, SQL statements are used to perform tasks such as read and write on a database.

NoSQL Definition

NoSQL Database is a non-relational Data Management System, that does not require a fixed schema.

It avoids joins and easy to scale. The major purpose of using a NoSQL database is for distributed data stores with humongous data storage needs.

Comparison SQL vs NoSQL

SQL NoSQL
Relational Database Non-relational Database
Predefined Schema Dynamic Schema
Not suited for hierarchical data storage Best suited for hierarchical data storage
Best for complex queries Not good at complex queries
Vertically Scalable Horizontally Scalable
Follows ACID property Follows CAP(consistency, availability, partition tolerance)
Examples: MySQL, PostgreSQL, Oracle, MS-SQL Server etc Examples: MongoDB, GraphQL, Neo4j, Cassandra etc

Decision

SQL

SQL is preferred for:

  • Small.
  • In systems where consistency is critical.
  • Table models.

Think business’ accounting systems, sales databases, or transactional systems like payment processing in e-commerce. When in doubt, it is also more appropriate, as RDBMSs are better supported and fault-tolerant. 

NoSQL

NoSQL is preferred for:

  • Graph or hierarchical data.
  • Data sets which are both large and mutate.
  • Businesses growing really fast but lack of schema.

In terms of use cases, this might translate to social networks, online content management, streaming analytics, or mobile applications.

Conclusion about SQL and NoSQL

Either of the database is good for several project, hope this blog gonna give you the better vision of both database and help you guys in choosing suitable database.

Leave a Comment

Your email address will not be published. Required fields are marked *