Some basic differences between SQL and NoSQL databeses:
SQL /relational/ | NoSQL /non relational/ |
Relational database, data is structured in tables. | No relational. Structured, semi-structured or unstructured data. |
Rigid table structure and tabular data model. | Flexible table structure and non-tabular data model. Different records may have different columns set. |
Relations between tables. | No relations between tables. |
Data is normalized to at least 1NF. | No normalization. |
Stored data is table based. | Stored data is document oriented or key-value pairs. |
Verically scaled /more storage and calculation power needed on the same DB server/. | Horizontaly scaled /multiple nodes in a cluster to handle increased workloads/. |
Normalization of the data. | No normalization. |
Use SQL to query the database. | Use varying query languages, some don’t even have a query language. |
Less faster than NoSQL. | Much faster than SQL, high performance, particularly read performance. |
Have to have table schemas prior using it. | No need to define table structure prior using it. |
Not the best solution for HUGE amount of data. | Best solution for HUGE amount of data. |
Литература:
https://www.coursera.org/articles/nosql-vs-sql
https://www.coursera.org/articles/relational-vs-non-relational-database