SQL uses Vertical Scaling, which means that to increase the computation power you have to increase the size of Single Server or Database.
Whereas NoSQl uses Horizontal Scaling, which means that to increase the computation power you can increase the number of Servers instead of relaying on Single Server.
3. Schema
Schema is a collection of Database objects, which decides the logical structure of the Database.
So, when it comes to SQL, it uses predefined schema. On the other hand, NoSQL uses dynamic schema for the Database.
4. SQL vs NoSQL - Type
SQL uses tables for storing, retrieving and managing the data. So, basically SQL is a Table based Database.
On the other hand, NoSQL can be of 4 types, which are Key-value stores, Graph Databases, Document Databases or Column-oriented Databases.
5. Hierarchical Data Storage
In Database, Hierarchical Data Storage is a Database Model which follow parent-child relationship or tree-like structure.
So, when it comes to SQL, it is not best suited for Hierarchical Data Storage. Whereas NoSQL is best suited for Hierarchical Data Storage.
6. Query Language
For all the SQL Databases, the query language we use is SQL(Structured Query Language).
On the other hand for NoSQL, there is no specific query languages and basically the language which is used for handling the data in NoSQL is called UnQL(Unstructured Query Language).
7. Complex Queries
SQL is best for working with complex queries. Whereas NoSQL is not a good option for handling Complex Queries.
The reasons behind this is that SQL Databases are Structured and tables are well organised. So, you can easily run Complex Queries(Example – Nested Queries) here.
On the other hand, NoSQL is a Unstructured Database, so, it is quite difficult to run complex queries here.