NoSql的易扩展性

NoSql现在很火很时髦,大家言必称NoSql,仿佛关系型数据库已成陈旧落后的代名词。

但依我看,真正理解NoSql的还不多,在实际项目中用过的应该就更少了。

我也还不理解,更没怎么应用过,所以现在要努力学习。

在学习过程中,常看到有吹嘘NoSql相比较关系型数据库而言,有一个优点是:易扩展。

这怎么理解呢?绝大部分的资料都没怎么讲,一味唾沫横飞地说:易扩展、高性能,高可用。。。

我看了一点MongoDB官网的文档,再结合自己的理解,解读如下:

NoSql的易扩展性:

关系型数据库的表之间,具有关联性,查询的时候往往需要join,因此所有的表需要存放在同一台服务器里。所以有人说(淘宝的数据库专家),目前的关系型数据库本质上是一个单机系统,而不是分布式的。

但NoSql就不同了:

1、表之间并没有什么关系(?),放哪都一样,特别适合分布式存储。

2、根据CAP理论,分布式系统中,一致性,可用性,分区容错性三者至多只能满足其二,NoSql牺牲了一致性,各个副本之间,仅追求的是最终一致性,这样也有利于分布式存储。

所以说它有好的扩展性(横向扩展)。


  • Easy Scalability
    • Automatic sharding distributes collection data across machines.
    • Eventually-consistent reads can be distributed over replicated servers.


原文地址:https://www.cnblogs.com/leftfist/p/4257882.html