计算机科学中,任何设计都会有理论支撑。数据库设计自然不会例外。
NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。
数据库分类,简单分成,关系型数据库核非关系型数据库。
没错,NoSQL就属于非关系型数据库,它的理论支撑是CAP理论,CAP理论的核心是:一个分布式系统不可能同时很好的满足一致性,可用性和分区容错性这三个需求,最多只能同时较好的满足两个。因此,根据 CAP 原理将 NoSQL 数据库分成了满足 CA 原则、满足 CP 原则和满足 AP 原则三 大类:
一句话是,传统关系型数据库处理不了超大规模和超高并发的场景。
这句话有些绝对,(如果不惜代价,拼命堆硬件,还是可以处理的),但是主要就是想表达这个意思,也是NoSQL的优势。其实有如下4个方面:
关联扩展性:关系型数据库存在类似Join这样多表查询机制,使得数据库在扩展方面很艰难。非关系型没有Join这样的操作。
关联处理速度:数据量达到一定规模时,由于关系型数据库的系统逻辑非常复杂,使得其非常容易发生死锁等的并发问题,所以导致其读写速度下滑非常严重。
也是非关系型数据库的优点
NoSQL有6大类应用,及各个代表