NoSQL VS. SQL

2020-09-01  本文已影响0人  忻恆

我们常常会听见这样的说法,传统的RDBMS已经过时了,NoSQL才是未来的主流,事实是这样的吗?这篇文章我们将要探索一下这二者。

SQL NoSQL
数据存储 存储在一个关系模型中,用行存储一个实体的数据,用列存储各个类型的数据 包含了许多数据库,每一个都有不同的数据存储模型,例如文件,图表,键值对等
结构和灵活性 每一条记录都是一样的形式,也就说我们需要提前决定需要哪些列,如果需要修改数据时则需要下线后修改 动态结构,可以在线上修改信息,每行不需要包括每一列的数据
可扩展性 竖向扩展,数据越大则需要越大的服务器,花费也因此越高。当然我们也可以用分布式的方法,将数据分布在不同的服务器上,这是一个困难的操作且消耗时间 可以水平扩展,也就是在多个服务器间扩展 across servers。服务器可以是便宜的家用电脑或者云服务器,更加节省开销。有的 NoSQL 技术甚至可以自动分布数据
ACID 原子性、一致性、隔离性、持久性 绝大多数关系型数据库都是符合ACID的 每个数据库都不相同,很多 NoSQL 都牺牲了 ACID 以换取高性能和可扩展性

NoSQL的种类

选择哪种数据库

首先,这两者不是对立的,很多公司都在同时使用这两种数据库。如果数据会快速变化,则需要高吞吐量;如果数据增长很快则需要NoSQL来快速增长 scale out;如果数据的增长速度可以预计,则SQL数据库是最佳选择。

上一篇下一篇

猜你喜欢

热点阅读