Computer >> Computer tutorials >  >> Programming >> MySQL

Difference between SQL and NoSQL


As we know both SQL and NoSQL are the types of databases and on the basis of their implementation and nature, both are categorized as of two types.

The following are the important differences between SQL and NoSQL.

Sr. No.KeySQLNoSQL
1TypeSQL database is generally classified as a Relational database i.e. RDBMS.While NOSQL database is known as non-relational or distributed database.
2LanguageAs we already know SQL uses structured query language for its CRUD operation which is defined as SQL. This makes SQL database to store data in more structured form and also preferred for more complex operations which could get completed with complex SQL queries.NoSQL database on other hand has dynamic schema for unstructured data.Data stored in this type of database is not structured and could be stored in either of forms such as document-oriented, column-oriented, graph-based or organized as a KeyValue store. This syntax can be varied from DB to DB.
3ScalabilitySQL database can extends its capacity on single server by increasing things like RAM, CPU or SSD i.e we can say that SQL dbs could be scalable in vertical as their storage could be increase for the same server by enhancing its storage components.In order to increase the capacity of NOSQL dbs we required to install new servers parallel to the parent server i.e NOSQL dbs could be scalable in horizontal and this made them more preferable choice for large or ever-changing data sets.
4Internal implementationSQL follows ACID properties for its operations which is abbreviation of Atomicity, Consistency, Isolation and Durability.On other hand NOSQL is based on Brewers CAP theorem which maily focus on Consistency, Availability and Partition tolerance.
5Performance and suited forSQL databases are best suited for complex queries but are not preferred for hierarchical large data storage.NoSQL databases are not so good for complex queries because these are not as powerful as SQL queries but are best suited for hierarchical large data storage.
6ExamplesSQL dbs is implemented in both open source and commercial Database such as like Postgres & MySQL as open source and Oracle and Sqlite as commercial.On other hand NOSQL is purely open source and MongoDB, BigTable, Redis, RavenDB, Cassandra, Hbase, Neo4j, CouchDB are the main implementation of it.