Sql 和Nosql区别

SQL类型数据特色sql

1.SQL表建立一个严格的数据模板,所以很难犯错误。
2.SQL规范化,多表关联模式最大限度的减小数据的冗余 。
3.SQL 具备强大的join 多表关联
4.SQL 具备外键保障数据的完整性
5.SQL 良好的事物支持
6.SQL CRUD 语法是标准化的陈述性语言数据库

Nosql类型数据库特色:json

1.NoSQL更加的灵活和宽容,可以存储任何数据,可能会致使一致性的问题。
2.NoSQL反规范化,牺牲数据冗余以加快查询的速度,但在多个记录中更新出版商信息将会显著变慢。
3.缺少完整性保障和事物保障
4.Nosql 基于json 简单但复杂查询
5.NoSQL 数据模型更加简单 常常被认为比SQL更快;并发

6.NoSQL数据自己在Cache上已经作了至关多的优化工做。优化

sql类型数据有以下弊端而Nosql在这方面作了很好的弥补编码

1. 扩展困难:因为存在相似Join这样多表查询机制,使得数据库在扩展方面很艰难;对象

2. 读写慢:这种状况主要发生在数据量达到必定规模时因为关系型数据库的系统逻辑很是复杂,使得其很是容易发生死锁等的并发问题,因此致使其读写速度下滑很是严重开发

3. 成本高:企业级数据库的License价格很惊人,而且随着系统的规模,而不断上升;模板

4. 有限的支撑容量:现有关系型解决方案还没法支撑Google这样海量的数据存储;基础


更适合SQL的项目:
•可预先肯定的逻辑关系离散数据的要求
•数据完整性是必不可少的
•有良好开发经验和支持的标准基础技术

 

更适合NoSQL的项目: •不相关的、不肯定或不断变化的数据要求 •更加简单宽松的项目对象,能够当即编码 •速度和扩展性是必要的