关系型数据库和NOSQL数据库对比

关系型数据库,是建立在关系模型基础上的数据库,其借助于集合代数等数学概念和方法来处理数据库中的数据。主流的 oracle、DB2、MS SQL Server和mysql都属于这类传统数据库。

NoSQL数据库,全称为Not Only SQL,意思就是适用关系型数据库的时候就使用关系型数据库,不适用的时候也没有必要非使用关系型数据库不可,可以考虑使用更加合适的数据存储。主要分为临时性键值存储(memcached、Redis)、永久性键值存储(ROMA、Redis)、面向文档的数据库(MongoDB、CouchDB)、面向列的数据库(Cassandra、HBase),每种NoSQL都有其特有的使用场景及优点。

oracle,mysql等传统的关系数据库非常成熟并且已大规模商用,为什么还要用NoSQL数据库呢?主要是由于随着互联网发展,数据量越来越大,对性能要求越来越高,传统数据库存在着先天性的缺陷,即单机(单库)性能瓶颈,并且扩展困难。这样既有单机单库瓶颈,却又扩展困难,自然无法满足日益增长的海量数据存储及其性能要求,所以才会出现了各种不同的NoSQL产品,NoSQL根本性的优势在于在云计算时代,简单、易于大规模分布式扩展,并且读写性能非常高。

下面分析下两者的特点,及优缺点:

关系型数据库

<1>关系数据库的特点是:

- 数据关系模型基于关系模型,结构化存储,完整性约束。

- 基于二维表及其之间的联系,需要连接、并、交、差、除等数据操作。

- 采用结构化的查询语言(SQL)做数据读写。

- 操作需要数据的一致性,需要事务甚至是强一致性。

<2>优点:

- 保持数据的一致性(事务处理)

- 可以进行join等复杂查询。

- 通用化,技术成熟。

<3>缺点:

- 数据读写必须经过sql解析,大量数据、高并发下读写性能不足。

- 对数据做读写,或修改数据结构时需要加锁,影响并发操作。

- 无法适应非结构化存储。

- 扩展困难。

- 昂贵、复杂。

NoSQL数据库

<1>NoSQL数据库的特点是:

- 非结构化的存储。

- 基于多维关系模型。

- 具有特有的使用场景。

<2>优点:

- 高并发,大数据下读写能力较强。

- 基本支持分布式,易于扩展,可伸缩。

- 简单,弱结构化存储。

<3>缺点:

- join等复杂操作能力较弱。

- 事务支持较弱。

- 通用性差。

- 无完整约束复杂业务场景支持较差。

特别说明:尊重作者的劳动成果,转载请注明出处哦~~~http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt328

时间: 2024-12-21 18:09:06

关系型数据库和NOSQL数据库对比的相关文章

初识NoSQL NoSql数据库入门 NoSql数据库基础知识_MongoDB

做了一年的大一年度项目了,对于关系型数据库结构还是有些了解了,有的时候还是觉得这种二维表不是很顺手.在看过一篇文章之后,对NoSQL有了初步的了解,(https://keen.io/blog/53958349217/analytics-for-hackers-how-to-think-about-event-data).这篇文章写的很好,确实写出来了在实际情况下NoSQL的"用武之地",而且用了MineCraft作分析,但是也许不够全面.比如文章中只是提到了,entity数据用关系型怎

分布式缓存能否作为NoSQL数据库?

(作者 Srini Penchikala 译者 丁雪丰) 对于文档.对象图.键值对这样的非关系型数据类型,NoSQL数据库为它们提供了另一种可选的数据存储方式.分布式缓存能被用作NoSQL数据库吗?Ehcache的Greg Luck撰文描述了分布式缓存与NoSQL数据库的相似性.InfoQ就此采访了他,讨论了该方案的利弊之处. InfoQ:你能否就分布式缓存解决方案与NoSQL数据库做个对比? Greg Luck:分布式缓存通常会把数据放在内存里,用于降低延时.NoSQL数据库是没有R的DBMS

NoSQL数据库技术特性解析之文档数据库

文档数据库-nosql数据库技术实战"> 现今云计算的从业人员对NoSQL一词并不感到陌生,虽然很多技术人员都长期从事关系数据库的工作,但现在他们对NoSQL技术充满期待.对于企业来说,从关系型数据库到NoSQL数据库转变绝对是个需要深思熟虑的大改变.这涉及的不仅是软件的变化,更多的是对于数据存储上观念性的变化. CouchDB专家兼作者Bradley Holt认为NoSQL并不是反SQL的运动,为对应的工作选择最恰当的工具才是正确的模式. 大多数非关系数据库都具有快速和可伸缩的特性.通过

云计算一周热文回顾:NoSQL数据库技术特性解析之文档数据库

NoSQL数据库技术特性解析之文档数据库 现今云计算的从业人员对NoSQL一词并不感到陌生,虽然很多技术人员都长期从事关系数据库的工作,但现在他们对NoSQL技术充满期待.对于企业来说,从关系型数据库到NoSQL数据库转变绝对是个需要深思熟虑的大改变.这涉及的不仅是软件的变化,更多的是对于数据存储上观念性的变化. 大多数非关系数据库都具有快速和可伸缩的特性.通过放弃关系存储模型和架构,关系数据库便可脱离由紧密结合的架构所带来对其施加的限制.应用程序也无需再链接数据库内表中的数据. MongoDB

NoSQL数据库重点产品列表 - 产品和技术

NoSQL数据库 重点产品列表 发布时间:2012.05.15 09:32 &http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;    来源:赛迪网     作者:卢敏 Cassandra 混合型的非关系型数据库,类似于Google的BigTable.Cassandra最初由Facebook开发,后来转变为开源项目.当时Facebook需要一个更快..更廉价的方式处理数以亿计状态更新的数据库系统,为此他们启动这一项目,

《图数据库》——2.2 NoSQL数据库也缺少联系

2.2 NoSQL数据库也缺少联系 图数据库 大多数NoSQL数据库-无论是键值数据库.文档数据库,还是基于列的数据库-存储的都是无关联的文档/值/列,因此很难将它们用于关联数据和图. 对这些数据库来说,一种广为认知的添加联系的策略是在某个聚合数据(aggregate)中嵌入另一个聚合数据标识符,即添加外键.然而这需要在应用层连接聚合数据,其代价极速增加. 当我们着眼于聚合存储模型(aggregate store model)时,如图2-3所示,我们联想到了联系.看到开头为user: Alice

深入解析NoSQL数据库的分布式算法(图文详解)_数据库其它

尽管NoSQL运动并没有给分布式数据处理带来根本性的技术变革,但是依然引发了铺天盖地的关于各种协议和算法的研究以及实践.在这篇文章里,我将针对NoSQL数据库的分布式特点进行一些系统化的描述. 系统的可扩展性是推动NoSQL运动发展的的主要理由,包含了分布式系统协调,故障转移,资源管理和许多其他特性.这么讲使得NoSQL听起来像是一个大筐,什么都能塞进去.尽管NoSQL运动并没有给分布式数据处理带来根本性的技术变革,但是依然引发了铺天盖地的关于各种协议和算法的研究以及实践.正是通过这些尝试逐渐总

【独家】一文读懂非关系型数据库(NoSQL)

前言 NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL". 现代计算系统每天在网络上都会产生庞大的数据量.这些数据有很大一部分是由关系型数据库管理系统(RDBMSs)来处理,其严谨成熟的数学理论基础使得数据建模和应用程序编程更加简单. 但随着信息化的浪潮和互联网的兴起,传统的RDBMS在一些业务上开始出现问题.首先,对数据库存储的容量要求越来越高,单机无法满足需求,很多时候需要用集群来解决问题,而RDBMS由于要支持join,union等操作,一般不支持分

8 种常用的 NoSQL 数据库系统对比分析_数据库其它

Kristóf Kovács 是一位软件架构师和咨询顾问,他最近发布了一片对比各种类型NoSQL数据库的文章. 虽然SQL数据库是非常有用的工具,但经历了15年的一支独秀之后垄断即将被打破.这只是时间问题:被迫使用关系数据库,但最终发现不能适应需求的情况不胜枚举. 但是NoSQL数据库之间的不同,远超过两 SQL数据库之间的差别.这意味着软件架构师更应该在项目开始时就选择好一个适合的 NoSQL数据库.针对这种情况,这里对 Cassandra.Mongodb.CouchDB.Redis. Ria