非关系型数据库和关系型数据库区别有哪些?

众所周知,数据库分为关系型数据库和非关系型数据库。那么非关系型数据库和关系型数据库区别有哪些?关系数据库和非关系数据库在使用方案上有很大的不同,因此没有强项和弱项。只有结合自身的业务特征,才能发挥这两种类型数据库的优势。让我们谈谈这两种数据库的一些特征:首先,一般的非关系数据库基于CAP模型,而传统的关系数据库基于ACID模型。

非关系型数据库和关系型数据库区别有哪些?_业界动态_行业云

 1. 数据存储结构:

首先关系型数据库一般都有固定的表结构,并且需要通过DDL语句来修改表结构,不是很容易进行扩展,而非关系型数据库的存储机制就有很多了,比如基于文档的,K-V键值对的,还有基于图的等,对于数据的格式十分灵活没有固定的表结构,方便扩展,因此如果业务的数据结构并不是固定的或者经常变动比较大的,那么非关系型数据库是个好的选择

 2. 可扩展性

传统的关系型数据库给人一种横向扩展难,不好对数据进行分片等,而一些非关系型数据库则原生就支持数据的水平扩展(比如mongodb的sharding机制),并且这可能也是很多NoSQL的一大卖点,其实象Mysql这种关系型数据库的水平扩展也并不是难,即使NoSQL水平扩展容易但对于向跨分片进行joins这种场景都没有什么太好的解决办法,不管是关系型还是非关系型数据库,解决水平扩展或者跨分片Joins这种场景,在应用层和数据库层中间加一层中间件来做数据处理也许是个好的办法

 3. 数据一致性

非关系型数据库一般强调的是数据最终一致性,而不没有像ACID一样强调数据的强一致性,从非关系型数据库中读到的有可能还是处于一个中间态的数据,因此如果你的业务对于数据的一致性要求很高,那么非关系型数据库并不一个很好的选择,非关系型数据库可能更多的偏向于OLAP场景,而关系型数据库更多偏向于OLTP场景

 非关系型数据库和关系型数据库区别

 非关系型数据库的优势:

 1. 性能

NOSQL是基于键值对的,可以想象成表中的主键和值的对应关系,而且不需要经过SQL层的解析,所以性能非常高。

 2. 可扩展性

同样也是因为基于键值对,数据之间没有耦合性,所以非常容易水平扩展。

 关系型数据库的优势:

 1. 复杂查询

可以用SQL语句方便的在一个表以及多个表之间做非常复杂的数据查询。

 2. 事务支持

使得对于安全性能很高的数据访问要求得以实现。

对于这两类数据库,对方的优势就是自己的弱势,反之亦然。

以上就是关于非关系型数据库和关系型数据库区别有哪些的全部内容,想了解更多关于数据库的信息,请继续关注。

37
165
0
27

相关资讯

  1. 1、专访丨克莱尔·西蒙:不带预设视角,拍纪录片才更无拘无束1200
  2. 2、国庆档港片“黑马”《无双》为何口碑最佳、上座率第一?4785
  3. 3、影视和周星驰齐名,唱歌带出谭咏麟,陈百祥才是隐藏的多面巨星272
  4. 4、“李云龙”第一人选原本是他,因片酬太低拒演,最终成就了李幼斌3648
  5. 5、电视荧屏八月展露新气象小清新将重返荧屏4632
  6. 6、TVB花旦确认出演《法政先锋4》法医否认执二摊顶替胡定欣1282
  7. 7、甄子丹为她离婚,48岁依旧美艳,至今膝下无子1435
  8. 8、TVB警匪剧《伙记办大事》下周一播出,欧阳震华保收视,杨明海报形象遭删除5038
  9. 9、影视剧中的经典书生形象,你们最喜欢其中哪个角色呢?4368
  10. 10、案子破了!《水形物语》没有抄袭,陀螺终于洗脱嫌疑4916
全部评论(0)
我也有话说
0
收藏
点赞
顶部