打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
SQL vs NoSQL:你需要知道什么?

不断演变的数据库生态圈




“SQL过时了。”


“RDBMS再也无法满足公司企业的数据管理要求了。”


“像NoSQL这些新的数据库技术是适合如今企业的解决方案。”


无论在数据库技术行业里面还是外面,诸如此类的论调我们可是听多了。但是它们果真属实吗?SQL真是明日黄花,NoSQL解决方案真是未来出路吗?


我们在本文中将概述SQL和NoSQL之间的区别以及众多NoSQL技术本身之间的一大堆区别,并且探讨关系数据库管理系统(RDBMS)是否真是明日黄花。


SQL vs NoSQL一览表:


SQL

NoSQL

数据存储

存储在关系模型中,有行和列。

行含有关于某一个特定数据项/条目的所有信息,列是所有不同的数据点;比如说,你可能有一行关于某辆车的数据,其中有“型号”、“款式”和“颜色”等列。

“NoSQL”这个术语涵盖许多数据库,每个数据库又有不同的数据存储模型。几种主要的数据库有:文档数据库、图形数据库、键值数据库和列式数据库。关于它们之间区别的更多信息详见下文。

数据库模式和灵活性

每个记录符合固定的数据库模式,这意味着列必须在数据录入前加以确定和锁定,每一行必须含有每一列的数据。这可以修改,但需要修改整个数据库,并且离线操作。

模式是动态的。

信息可以实时添加,每一“行”没必要含有每一“列”的数据。

可扩展性

扩展是纵向的。实际上,更多的数据

意味着更庞大的服务器,成本可能非常高昂。可以跨多台服务器扩展RDBMS,但这是一个困难又费时的

过程。

扩展是横向的,这意味着跨服务器扩展。这些多台服务器是便宜的商用硬件或云实例,因而比纵向扩展要经济高效得多。许多NoSQL技术还自动将数据分配到多台服务器上。

ACID遵从性

(原子性、

一致性、隔离性和持久性)

绝大多数的关系数据库遵从ACID。

不同技术的遵从性不一样,但是许多

NoSQL解决方案牺牲ACID遵从性,

以换取性能和可扩展性。


NoSQL的多张脸孔


听到“NoSQL”这个术语后,你可能以为统一属于这个范畴的所有技术都有同样的数据模型,有这种想法也情有可原。实际上,NoSQL是指一整批技术,这些技术存储和处理数据的方式各不相同。一些主要的方式包括如下:


文档数据库


文档数据库解决方案CouchDB的这张图相当清楚地总结了RDBMS和文档数据库之间的区别:


SQL vs NoSQL


数据存储在文档中,这些文档按集合体分门别类,而不是说数据以行和列的形式存储在表中。每个文档可能有全然不同的结构。文档数据库包括上面提到的CouchDB和MongoDB。


键值存储数据库


数据存储在键值对的相关数组中。键是个属性名称,它与值关联起来。知名的键值存储数据库包括Redis、Voldemort(由LinkedIn开发)和Dynamo(由亚马逊开发)。


图形数据库


这种数据库用于使用图形可以清楚表示关系的数据。数据存储在图形结构中,有节点(实体)、属性(关于实体的信息)和线条(实体之间的关系)。这种数据库的例子包括Neo4J和InfiniteGraph。


列式(或宽列)数据库


在列式数据库中,你拥有的是列族、而不是“表”,列族其实是行的容器。不像RDBMS,你不需要事先知道所有的列,每一行没必要拥有数量一样的列。列式数据库最适合分析庞大数据库,知名的列式数据库包括Cassandra和HBase。


SQL vs NoSQL:该使用哪一种?


如果认为SQL和NoSQL是直接的对立面、彼此竞争,这种想法未免存在缺陷,尤其是由于许多公司决定同时使用两者。与我之前探讨的所有技术一样,确实不存在“一应俱全式”的方法;选择合适的技术取决于具体的使用场合。如果你的技术需求在不断变化,就需要高吞吐量来处理病毒式增长;或者你的数据在快速增长,你需要能够迅速、高效地横向扩展,那么NoSQL可能适合你。但是如果你拥有的数据其结构没有发生变化,面临的又是易于管理的适度增长,那么SQL技术也许就能满足你的需求。当然,SQL还没有完蛋。


云头条编译|未经授权谢绝转

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
SQL VS. NoSQL:你需要知道些什么?
什么是MongoDB?简介、架构、功能和示例 | MongoDB中文社区
选择合适的NoSQL存储系统
NoSQL 再次败北
搞懂数据库看这篇就够了!
NoSQL数据库的35个应用场景
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服