关系型数据库的核心就是SQL,也就是关系,有很严谨的数学基础-关系代数,能很好的呈现现实世界的复杂联系。html
最重要的特性就是对事务的支持,也就是ACID,这是由Jim Gray提出的,他所以荣获1998年度的图灵奖。面试
这种数据库,比较适合传统的企业,以及电商公司,也就是交易型。mongodb
NoSQL,存储的是key-value对,存储模型相对简单,容易扩展,比较适合简单的业务。数据库
把任务分解,发往各台服务器,而后个台服务器之间经过分布式文件系统共享数据,底层经过一个存储结构来存储数据,这样就能适应并发量和IO的高要求。安全
对于有超大量并发的网站,好比facebook,就很适合,固然有这么大并发量的公司,全世界也没几个。服务器
前天去面试,那个公司以前用的mongodb,他们说会有丢数的问题,今天上网查了一下,还真能查到很多丢数的问题。看来这是一个广泛的问题,说明mongodb在这方面还须要不断的改进,不然,就只能用于通常的互联网方面,不太适合对数据质量和安全要求较高的业务。网络
另外,以前看了一些DB2的资料,里面提到DB2的一个重要特性DPF,就是数据库分区特性。一个数据库中的某个表可能超大,经过这个特性,能实现把这个表的数据自动水平分布到多台服务器,多台服务器之间经过网络文件系统来共享数据,固然,底层的数据结构,仍是采用B树实现。数据结构
下面是一个访谈,写的很是好:38期:NoSQL专家王涛访谈:为何咱们还要作一个NoSQL?并发