Wednesday, November 8, 2017

Difference Between SQL and NoSQL database

SQL databases are a Relational Database( RDBMS) whereas NoSQL databases are distributed databases. This means they are easier to manage and they provide a higher level of flexibility with newer data models.Sql database represent data in the form of table means it represent data in row and coloumns whereas Nosql database represents data in documents means it collects data in key value pairs. SQL databases are vertically scalable whereas NoSQL databases are horizenatlly scalable.And another main difference is that the amount of data stored mainly depends on the Physical memory of the system. While in the NoSQL you don't have any such limits as you can scale the system horizontally.

Extremely large datasets are often event based transactions that occur in chronological order. Examples are weblogs, shopping transactions, manufacturing data from assembly line devices, scientific data collections, etc. These types of data accumulate in large numbers every second and can take a RDBMS with all of its overhead to its knees. But for OLTP processing, nothing beats the combination of data quality and performance of a well designed RDBMS."
NoSQL is a very broad term and typically is referred to as meaning "Not Only SQL." The term is dropping out of favor in the non-RDBMS community.
You'll find that NoSQL database have few common characteristics. They can be roughly divided into a few categories:

key/value stores
Bigtable inspired databases 
Dynamo inspired databases
distributed databases
document databases

  • By nature, relational databases are the go-to solution for complex querying and data keeping needs. They are much more efficient and excel in this domain.

  • When it comes to data reliability and safe guarantee of performed transactions, SQL databases are still the better bet.

  • SQL examples are MySql etc whereas Nosql examples are MongoDB, BigTable etc.



But SQL guarantees data integrity. NoSQL allows freedom in how you store data (you are not limited to storing one item in one field like in SQL. Think of SQL as an excel sheet and NoSQL as a notepad file. You are free to store your data as you want). So its easier to make mistakes in NoSQL and you could actually loose the advantage of the control you get by following wrong practices.

No comments:

Post a Comment

High Paying Jobs after Learning Python

Everyone knows Python is one of the most demand Programming Language. It is a computer programming language to build web applications and sc...